About Joshua Hayes, Full-Stack Developer and SEO
I started in marketing and learned to code to fix what I found
A path from a dealership call center to leading development on a production SaaS.
I did not start as a software engineer. I started in the call center of an auto dealership group, handling leads for the business development center.
That job taught me how a customer actually arrives at a business, and what happens to them after they do. Everything I build now starts from that question.
From the call center to SEO and ads
At World Car Auto Group in San Antonio, my role grew from lead handling to SEO and then to paid search. The company did not use formal titles, so I took on the next problem and kept the earlier duties.
I ended up running SEO and Google and Bing ads for 13 dealerships. Ad budgets ran from $10K to $40K monthly across all 13 stores, with bi-weekly reports on cost per lead and conversions.
Learning to code because the data demanded it
Reports and data were slow, and no tool did what I needed. I began writing code in 2016, built usable projects in 2017, and was building full websites and custom APIs by 2019.
My first large data problem was a 3.5 GB Texas sold-vehicle dataset. I used Python to filter it into reporting data, and that project is where software started to look like the answer to business problems.
From there I built the Go pipeline that feeds vehicle inventory to Google and Facebook ads, a script that matched landing pages to ad offers, and Google Ads scripts for budgets and search terms.
Moving into full-time development
In 2023 I joined Aquifer Investments as a full-stack developer. I built a Django site with city and county pages, a KPI tracker in Google Data Studio, a phone scrubber, and a multi-threaded data collection scraper.
That work grew into RE/AMP. Since March 2024 I have been the lead developer on it, covering architecture, backend, frontend, infrastructure, and production support. Some of my World Car work continues part-time, where I manage Google search campaigns.
How I work
- I design the data first. The database model comes before features, because mistakes there are expensive later.
- I test first. I write tests for edge cases and bad input, and I review every change before it is committed.
- I use AI as a tool. I use Claude, ChatGPT, and Gemini regularly. Architecture, constraints, and verification stay with me.
- I plan for maintenance. Pages, listings, and code decay without upkeep, so I build refresh cycles into the work.
- I say what I have and have not done. If I have not used a tool, I will tell you, and then show the similar work I have done.
Self-taught, with proof
I did not take a traditional route into software. The proof is in the work you can read: case studies, public repositories, and a resume with specifics.
Work with me
If you have a problem between your marketing and your software, tell me about it. If you are hiring, see my engineering page.
Career timeline
Used on the About page.
-
2014
World Car Auto Group
Started in the BDC; the role grew into SEO, paid search, and development.
-
2016
Started writing code
Usable projects in 2017; full websites and custom APIs from 2019.
-
2023
Aquifer Investments
Full-stack developer.
-
2024
RE/AMP
Lead developer since March 2024.