Skip to content
Joshua Thomas, Software Engineer

Joshua Thomas

Software Engineer

Detroit, MI

About

I am a software engineer specializing in architecting custom software, robust automation, and streamlined data workflows. Leveraging tools like Python, C++, and TypeScript, I build reliable backend systems designed for scale and performance.

Beyond writing code, I take a strategic approach to project management. With experience leading and training teams, I excel at evaluating operational bottlenecks and implementing the right technological solutions to significantly drive company efficiency. I thrive in environments that require bridging the gap between complex engineering challenges and high-level business objectives.

Experience

  1. Jan 2026 — Present

    Software Engineer, Internal Tools · Dunton Consulting

    Building the internal tooling the company reports on, leading a small data team, and running IT for large client events.

    • Developed and deployed an internal web application that consolidated reporting and centralized synchronization between databases, cutting time spent on reporting by over 50% and reducing manual-entry errors.
    • Managed and trained a three-person team, overseeing two projects from kickoff through delivery and tracking up to four concurrent projects in Jira.
    • Implemented an AI agent that ingests focus-group video and audio, extracts the important questions and answers, and highlights key details, cutting footage review time by up to 50%.
    • Served as the primary IT point of contact for the team, handling hardware deployment, router configuration, static IP assignment, and network troubleshooting for conventions of over 5,000 attendees.
    • Python
    • Pandas
    • Google API
    • Gemini
    • SQL
    • Jira
  2. May 2025 — Nov 2025

    Lead Data Engineer · Mary Sheffield For Mayor

    Owned the data operation for Detroit's historic mayoral campaign, from pipelines to the interns running reports.

    • Provided foundational data management and strategic analysis for Detroit’s historic, successful mayoral campaign (first woman elected).
    • Engineered data synchronization pipelines using the Parsons library to maintain the integrity of over 100,000 records across databases.
    • Acquired and analyzed key datasets — polling locations, early voting, and past election results — to develop targeted field strategies.
    • Onboarded, trained, and managed a team of over 10 data and field interns, delegating tasks and ensuring data quality control.
    • Architected automated reporting and quality-control workflows integrating Google APIs, Google Apps Script, Parsons, and VAN, improving processing time and reducing manual errors.
    • Directed post-election data wrap-up, archiving all critical campaign documents, engagement records, and key datasets.
    • Python
    • Parsons
    • NGP VAN
    • Google Apps Script
    • PostgreSQL
  3. Jun 2023 — Aug 2023

    Security Engineer Intern · Amazon

    Shipped internal security tooling and worked vulnerability triage alongside the security engineering team.

    • Developed a single-page React application using TypeScript for Amazon’s internal NIST CVSS calculator, improving the speed of vulnerability assessments by an estimated 30%.
    • Assessed and triaged over 100 critical and non-critical security vulnerabilities using vulnerability assessment & management techniques to determine risk and priority.
    • Wrote comprehensive documentation for the vulnerability calculator, enhancing user adoption and team productivity.
    • TypeScript
    • React
    • CVSS
    • Vulnerability management

Projects

Dunton Birdseye

Multi-client field-operations platform for a political consulting firm, replacing a sprawl of Google Sheets and Apps Script.

  • Built a centralized multi-client project dashboard consolidating NGP VAN, Google Sheets, Mobilize, and an internal database behind one interface, covering turf tracking, percent-to-goal analytics, canvasser quality control, and automated client reporting.
  • Implemented role-based access control across five roles using bcrypt password hashing, JWT sessions, and granular per-resource permissions, so data and changes are restricted to permitted parties.
  • Enforced all 19 permissions in the API independently of the interface — hiding a link is presentation, not access control.
  • Implemented an audit log capturing every state-changing request and authentication event with user, IP, status, and duration. During RBAC testing it surfaced a privilege escalation where a client-facing read-only role could enumerate staff accounts.
  • Python
  • Parsons
  • NGP VAN
  • JWT
  • PostgreSQL

Campaign Finance Tracker

Tracks and compares campaign finance data, with built-in compliance monitoring for contribution limits.

  • Built a full-stack application that tracks and compares campaign finance data between active candidates and historical filings, on a FastAPI backend with a Next.js frontend.
  • Added an internal compliance tool that continuously monitors donations and flags individual contributors approaching or exceeding legal contribution limits.
  • Deployed on Cloudflare for high availability and fast delivery.
  • Next.js
  • FastAPI
  • Python
  • Cloudflare

Global Wiki Analytics Pipeline

End-to-end streaming pipeline over the Wikimedia firehose, from Kafka ingest to a live Grafana dashboard.

  • Architected an end-to-end distributed streaming pipeline ingesting the continuous Wikimedia EventStreams firehose through a custom Python producer and Apache Kafka.
  • Developed a PySpark Structured Streaming application to consume, parse, and transform large JSON payloads in real time.
  • Engineered a custom sink with PySpark's foreachBatch to load processed micro-batches into PostgreSQL as the hot-storage layer for real-time analytics.
  • Deployed a live Grafana dashboard over that database, visualizing time-series and system metrics.
  • Python
  • Apache Kafka
  • PySpark
  • PostgreSQL
  • Grafana

Network Monitoring Dashboard

Distributed Raspberry Pi probes measuring real-world network health across sites, feeding Prometheus and Grafana.

  • Deployed Raspberry Pi nodes that expose custom Prometheus gauges for per-site request latency and node liveness, scraped every 15 seconds and visualized in Grafana.
  • Wrote a threaded Python collector that probes 18 target sites concurrently with a liveness heartbeat over HTTP/2, labeling every metric by node location so a single-site slowdown is distinguishable from a network-wide outage.
  • Automated node provisioning with a Bash script that installs node_exporter as a systemd service under a dedicated user and enables it at boot, reducing a new monitoring site to one command.
  • Secured all inter-node data transmission using Tailscale.
  • Python
  • Bash
  • Prometheus
  • Grafana
  • Tailscale

Sort Visualizer

Animates six sorting algorithms side by side, with live comparison and array-access counters.

  • Built an interactive visualizer for six sorting algorithms — quick, merge, and heap sort against bubble, selection, and insertion sort — with adjustable array size and animation speed.
  • Instrumented each run with live comparison, array-access, and elapsed-time counters, and seeded arrays as random, nearly sorted, reversed, or few-unique to show how input shape changes real behaviour.
  • TypeScript
  • React

Contact

Open to new opportunities, technical challenges, or projects. The fastest way to reach me is email.