Back to Blog
Technology

I Hired an AI Developer (And It’s Free): How I Use Google Jules to Build My Site

11/8/2025
6 min read

I built this latest version of my website without writing a single line of code. In the past, maintaining a site meant wrestling with WordPress themes or getting stuck in "copy-paste hell" with early AI chat tools.

I Hired an AI Developer (And It’s Free): How I Use Google Jules to Build My Site


I built this latest version of my website without writing a single line of code.


In the past, maintaining a site meant wrestling with WordPress themes or getting stuck in "copy-paste hell" with early AI chat tools. I would describe what I wanted, copy the raw code, paste it into my files, break everything, and spend hours debugging. It was inefficient, and maintaining version control was a nightmare.


But recently, I found a workflow that actually scales. I stopped trying to be a developer and started acting like a Product Manager.


I hired a team of AI agents. Gemini is my Architect, and Google Jules is my Developer. Here is exactly how I use them to build features for grantglazer.com.

The Stack


  • Gemini: The Architect. I use this to brainstorm logic and generate the technical instructions for the developer.
  • Google Jules: The Developer. An asynchronous agent that has direct access to my GitHub repo. It writes the code, creates branches, and fixes bugs.
  • Vercel: The Staging & Production Environment. It automatically builds my site so I can see changes live.
  • GitHub: The Version Control. Where I approve the work and push it live.
  • The Managerial Workflow


    I don't write code; I manage a process. Here is the lifecycle of a new feature on my blog.


    1. The Brief (Gemini)


    I start by telling Gemini exactly what I want in plain English.


  • Me: "I want to add a dark mode toggle to the header. It should save the user's preference."
  • Gemini: Analyzes the request and writes a detailed, technical prompt optimized for Jules.

  • 2. The Assignment (Jules)


    I take that prompt and feed it to Jules. I make sure Jules is building off the latest branch of my site.


  • Crucial Step: Jules creates a new branch (e.g., feature-dark-mode) for every task. This keeps my main live site safe while we experiment.

  • 3. The Build & Test (Vercel)


    Jules writes the code and updates the repo. I don't even look at the code files. Instead, I wait for the Vercel Deployment. Vercel automatically builds a preview URL for that specific branch.


  • If it fails: I copy the error logs from Vercel and feed them back to Jules: "Fix this error."
  • If it works: I open the preview URL on my phone and desktop. I click around. Does it look good? Is the animation smooth?

  • 4. The Feedback Loop


    If I don't like something, I don't try to fix the CSS myself. I just tell the bots.


  • Me: "The button is too small on mobile. Make it 20% larger and round the corners."
  • Jules: Updates the branch, Vercel updates the preview, and I test again.

  • 5. The Launch (GitHub)


    When I'm happy with the Vercel preview, I go to GitHub. I find the Pull Request Jules opened, and I manually click Merge. That merges the new feature into my main branch. Vercel detects the change and automatically pushes the update to the live internet.

    Sage Advice for the Jules Rookie


    After hundreds of deployments, I’ve learned that Jules is like a brilliant but junior developer. You have to manage it correctly to get the best results. Here are my top tips.


    The Secret Weapon: AGENTS.md


    Most people don't know this exists. You can add a file called AGENTS.md to the root of your repository. Think of this as an "Onboarding Manual" for your AI employee. In this file, I list my project's specific quirks so I don't have to repeat them in every prompt.


  • Example content: "Always use Tailwind for styling. We use the 'app' router in Next.js. Never install new npm packages without asking first." Jules reads this before every task. It saves me hours of correcting the same mistakes.

  • One Feature per Session


    Don't try to be efficient and cram five different requests into one chat. The longer the chat, the slower Jules gets.


  • My Rule: One feature per session. If I want to build a "Related Posts" section, that's one session. Once it's merged, I start a brand new session for the next feature. A fresh brain works better.

  • Review the "Plan," Ignore the Code


    When you give Jules a task, it pauses and presents a Plan. Do not skip this. If the plan says "I will delete the database schema to fix the typo," you need to catch that before it executes. If the plan looks vague, reject it and tell Jules to be more specific.


    The "Loop of Death"


    Sometimes Jules gets stuck. It tries to fix a bug, fails, apologizes, and tries the exact same fix again.


  • The Fix: Don't argue with it. Pause. Close the tab. Start a new session and give it the error message from the start.

  • Gemini is Your Translator


    Since I focus on the "What" and not the "How," I use Gemini to translate my user feedback into developer speak.


  • Me: "I want the text to look less squished."
  • Gemini translates to Jules: "Increase the line-height to 1.6 and add padding-bottom to the paragraph elements."
  • Final Thoughts


    This workflow has changed everything for me. I’m no longer limited by syntax or time. I can dream up a feature, describe it to my "Architect," have my "Dev" build it, and test it like a user.


    If you have an idea for a website, stop worrying about how to write the code. Get a Vercel account, fire up Jules, and start managing.