elliottprogrammer

I’m Bryan Elliott (AKA elliottprogrammer), a frontend-leaning full-stack software engineer with over 15 years of experience building scalable, maintainable, and user-focused web applications.

I specialize in crafting thoughtful frontend architectures using JavaScript, TypeScript, and React, while staying deeply connected to the backend systems that power them. I care a lot about detail, clarity, and building software that feels intuitive to use and easy to evolve over time.

Throughout my career, I’ve worked on a wide range of products, from large-scale SaaS platforms and mission-critical checkout systems to internal developer tooling and AI-powered features. I enjoy working on complex problems, modernizing legacy systems, and designing solutions that balance user experience, technical constraints, and real business needs. I’m especially drawn to projects that require careful planning, strong collaboration, and a long-term mindset.

I also place a strong emphasis on craftsmanship and process. Whether I’m translating designs into polished, accessible interfaces, designing APIs, or refactoring existing codebases, I aim to leave systems better than I found them. I value clear communication, thoughtful tradeoffs, and building software in a way that helps teams move faster and more confidently.

On this blog, I regularly write about software engineering and web development topics that I’m actively working with and passionate about, for example JavaScript, React, CSS, frontend frameworks, API development, AI-assisted workflows, and personal side projects. I use this space to share what I’m learning, explore ideas, and document real-world engineering challenges and solutions as I continue to grow and level up as an engineer.

4 canvas performance optimization techniques

4 Performance Optimizations That Made My Canvas Particle Animation Butter Smooth

I’ve been working on image-atomizer-js — a canvas effect that turns an image into thousands of particles (“atoms”) that settle into place and react to mouse hover/touch. This kind of project can be a performance trap, if you’re not careful: This post is a write-up of the four biggest optimizations that moved the needle, plus […]

4 Performance Optimizations That Made My Canvas Particle Animation Butter Smooth Read More »

JavaScript Projects

Building Elliott-AI: A RAG Agent That Knows My Career Better Than I Do

I wanted a way for people (recruiters, hiring managers, teammates… and honestly, even me) to ask questions about my work and get a grounded, accurate answer, based on my actual resume, project write-ups, blog posts, and other various career related docs. So I built Ask Elliott-AI: a Retrieval-Augmented Generation (RAG) agent that answers questions specifically

Building Elliott-AI: A RAG Agent That Knows My Career Better Than I Do Read More »

JavaScript Projects Web Development
Elliottprogrammer avatar cartoon with "Why Frontend?" text.

🤔 Why Frontend?

🤔 Why Frontend? A Personal Reflection on Craft, Creativity, and Caring About the Human on the Other Side Recently, during an interview, I was asked, “Why frontend?”, and surprisingly I had never really thought about this, until that moment: “Why frontend? What makes you frontend leaning?” The quick answer that came to mind was the

🤔 Why Frontend? Read More »

Web Development

🧩 Debug Smarter, Not Harder: Hidden Gems in Chrome DevTools

🪞 Introduction Most devs use Chrome DevTools every single day, but most of us only scratch the surface. We live in the Console + Elements tab loop, tossing in console.log()s, tweaking CSS, and refreshing pages like it’s 2010. But Chrome’s DevTools team has quietly added a ton of powerful features that can actually make debugging

🧩 Debug Smarter, Not Harder: Hidden Gems in Chrome DevTools Read More »

Web Development

🕹️ Always Leveling Up: Building My Own Mini Game (and My Skills) as a Full-Stack Engineer

If there’s one thing that keeps software engineering exciting, it’s that you never really arrive. There’s always another language to learn, a better pattern to adopt, a smarter workflow to refine, or if you’re me, a completely unnecessary but delightfully nerdy way to turn your portfolio into a mini video game. Welcome to “Always Leveling

🕹️ Always Leveling Up: Building My Own Mini Game (and My Skills) as a Full-Stack Engineer Read More »

Projects Web Development
Integrating AI into a React app with elliottprogrammer character.

🧩 Integrating Generative AI into a React App (Without Making It a Gimmick)

🪞 Introduction Let’s be honest: AI is everywhere right now. Every other product demo seems to have a “magic ✨” button that generates something… but too often, it’s a solution in search of a problem. Over the past year, I’ve experimented with integrating generative AI into real production apps. And while it’s incredibly powerful, I’ve

🧩 Integrating Generative AI into a React App (Without Making It a Gimmick) Read More »

JavaScript Web Development

Making Images Interactive with JavaScript: Turning Pictures into Little Games

We’ve all seen static images on websites. They’re nice, but what if your images could be more than decoration? What if they could invite your visitors to play! Like click, reveal, solve little challenges, and interact like a mini-game? That’s exactly what I’ve been experimenting with on my portfolio: using JavaScript to make images interactive.

Making Images Interactive with JavaScript: Turning Pictures into Little Games Read More »

JavaScript Projects
Presenting HTTP verbs on chalkboard.

Understanding HTTP Verbs: A Frontend Engineer’s Guide to Making the Right API Request

Earlier today, I was in an interview for a frontend engineering role when the interviewer asked a seemingly simple question: “Can you explain the difference between a PUT and a PATCH request?” I froze… Despite having made hundreds, probably thousands of API calls throughout my career (although most of them using GET and POST), I

Understanding HTTP Verbs: A Frontend Engineer’s Guide to Making the Right API Request Read More »

Web Development

Transforming Particles Into An Image ✨ (Meet imageAtomizer.js)

So lately I’ve been busy rebuilding my dev portfolio site. Like any good portfolio, I wanted the hero section (that big first impression spot at the top of the page) to have something… well, fancy. That’s where imageAtomizer.js comes in. It’s a little JavaScript library I built that takes any image and explodes it into

Transforming Particles Into An Image ✨ (Meet imageAtomizer.js) Read More »

JavaScript Projects
Scroll to Top