← Back to blog

Modern Software Engineering

Something shifted. Everything I went to school for is changing, and I'm trying to make sense of it.

This post was written with AI assistance.

I’ve been heads down in Claude Code for the past two weeks. I remember when ChatGPT dropped — I thought that was shocking. Now that I’m actually using these tools every day, it feels like I have an extension of my brain. Things are moving so fast that my fingers are the limiting factor. I find myself talking most people’s ear off about it, and the ones who are using it and “get it” — I feel like I could talk with them for hours. It’s a strange feeling. It’s like unlocking an actual super power.

Things that would have taken weeks before are now done in minutes.

The shift

Something clicked for me recently. I realized that everything I went to school for — the way I learned to build software, the skills I spent years developing — the ground underneath all of it is moving. For me, the thing that changed wasn’t learning a new language or picking up a new framework. It was realizing that the skill that matters most now is being able to think in systems and direct these tools effectively.

I think the shift is just that fast and that hard to grasp until you’ve lived in it. I’m still making sense of it myself.

I’m writing this more as a time capsule than anything. We all say “can you imagine where we’ll be in 5 years?” I want a record of what this moment actually feels like.

How fast things move

Here’s what my velocity looks like:

  • A house blueprint planning app in 30 minutes. Not a mockup. A working app. I needed to visualize house dimensions on a plot and it was live on Vercel before my coffee got cold.
  • Automated TestFlight deployments. I say “deploy my app to TestFlight” and it cuts a release with detailed release logs for the App Store. End to end. That’s a workflow that used to take me an afternoon to set up manually.
  • A full personal website from scratch. This site — Astro, Tailwind, blog, multiple pages — built and deployed in a single session.

I have a list of ~30 project ideas I’ve been putting off for years. The kind of stuff that always felt like “I’ll get to that eventually.” Now they can each be built in a day. I’ve built more in the past two weeks than I have in the past year of side projects.

Jensen Huang recently said on the All-In Podcast that he’d be “deeply alarmed” if a $500K engineer wasn’t spending at least $250K on AI tokens annually — half their salary. He compared not using AI to designing chips with paper and pencil. That’s the bar now for high-level engineers.

For me, this is what modern software engineering feels like. I’m burning through several hundred thousand tokens a day and it doesn’t feel excessive — it just feels like how the work gets done now.

If it’s a problem, it can be solved

My mindset shifted from “how can I solve this?” to “I know I can solve this — I just have to communicate well enough to do it.”

I get the Claude commercials now. I’ve been saying “use the tools to build the tools” a lot. Any problem can be solved. It’s now a matter of how well you can break it down and direct it into the sum of its parts.

The barrier to building is basically gone. Any engineer can make any app in the world right now. The question isn’t “can we build it?” anymore — it’s “should we?” and “how fast can we ship it?” Time to market is becoming the only thing that matters. The engineers and teams who can go from idea to working product the fastest are the ones who win. That’s a fundamentally different game than the one most of us were trained for.

What’s working for me

The thing that’s made the biggest difference isn’t knowing the most syntax or having the deepest expertise in one language. For me, it’s been the ability to break down a problem, compartmentalize it, weigh the options, and make decisions. That systems-driven thinking is what I keep coming back to.

One thing I keep thinking about: I ran a coding bootcamp for six cohorts. If I were designing that curriculum today, I’d spend a lot more time on systems thinking and communication, and a lot less time on syntax. The ability to clearly articulate what you want to build is starting to feel just as valuable as the ability to write it by hand. Maybe that’s wrong — I’m still working through it. But it’s where my head is.

The mental model problem

Having the mental model is more important than ever. Understanding how systems work — how data flows, how components connect, what happens when things break — that’s the foundation everything else sits on. AI can generate code faster than any of us can type, but if you don’t have the model in your head, you can’t direct it, you can’t catch when it’s wrong, and you can’t make the hard architectural calls.

Navigating the balance between maintaining that model and how much control we hand over to AI is going to be a real challenge — and maybe the most important problem engineers will face. Let go too much and you lose the ability to reason about your own system. Hold on too tight and you miss the leverage these tools give you. I don’t think anyone has figured out where that line is yet. I know I haven’t. But I think the engineers who do will be the ones who thrive.

Vercel’s Agent Responsibly post hits on this exact tension — the gap between “this PR looks correct” and “this PR is safe to ship” is widening as agents produce polished code without understanding production realities. The mental model is what closes that gap. Without it, you’re just approving diffs.

And there’s a deeper question underneath all of this that I can’t stop thinking about. These systems are getting better at sounding like us — writing like us, reasoning like us, responding like us. At some point, the line between “built by a human” and “built by AI” gets blurry enough that it changes what trust means in software.

How good can AI systems get where they appear to be acting, talking, and thinking like a human, but not actually a human?

I don’t have an answer. But I think engineers are going to have to sit with that question a lot more than we realize.

Thank you

As I lean into this shift, I have to thank a lot of people. This post is about technology, but behind the systems thinking and AI tools are real people who shaped how I got here. These AI systems have made me realize people are the most important thing — we can’t lose these types of connections. I’m fortunate to have worked with each of these people (in no particular order):

  1. Doug Crescenzi — I’ve been fortunate to build systems-thinking muscles over the years, starting with the operational systems I built at Hack Upstate. Those experiences taught me to think in systems long before AI made it feel so relevant — and I owe so much of that to Doug. He handed me the reins of Hack Upstate and let me run with it. So much of whatever success I’ve had traces back to what he showed me. Without him, I wouldn’t be writing this post. Thanks for taking a shot on a snot-nosed college kid from Potsdam.

  2. Brent Ryczak — Speaking of Potsdam, I need to thank Brent for getting me into code in the first place. I still remember driving up to Potsdam for a CS lecture and not being able to get into the conference room. I was so fired up when you were able to come to Hack Potsdam. Keep streaming, keep dreaming.

  3. Bill Kennedy — Whatever fire you instilled from your Go workshops never left me, whether it was Albany or Potsdam. I still bring your teachings with me when I write code every day. Your fundamental approach — systems are simply input and output — changed how I think about software. In Bill’s teachings, he stresses the importance of having a strong mental model of the code — an idea that’s become even more central in the age of AI.

  4. Will Guisbond — Will was our first program manager and left very big shoes to fill. He’s the definition of a systems thinker and problem solver — he blew it out of the park with the first cohort.

  5. Max Matthews — Our fearless dean of students. Max took Hack Upstate to the next level, committing countless hours to building this program and teaching our students the fundamentals of code. I recognize all the sacrifice that took.

  6. Max Gerlach — The ultimate systems guy. From building out Pipefy workflows to creating detailed documentation on every process, Max was our guy.

  7. Laura Thorne — Laura served as our career coach and was able to help our students with everything related to their job search. Her guidance made a real difference in getting our graduates career-ready.

  8. Jason Scharf — Jason served as our student success representative who helped our students navigate whatever difficult challenges our program threw at them. His support kept people on track when it mattered most.

  9. Andrew Wladis — It’s been a privilege to teach you code over the years and watch your continued success. I still have Swiftie Swipe on my phone. When I saw you on the news, it was clear you were way ahead of the curve — you’ll be at the forefront of AI.

Thanks to all our other program managers over time — Dana McMullen, Jennifer Tran, Karin Thorne, and Kaitlyn Warboy. Also have to thank Jeremy Conn for the Hack Upstate website. And thank you to all the instructors, teaching assistants, mentors, and guest speakers we’ve had over the years.

On the day-job side, I have too many colleagues to thank at Equitable, but here are a few. Zach Peck, Lizmarie Von Langen, and Paul Kwoyelo — I miss grabbing lunch at Lieh’s and building things fast in our early days at the company. I look back on those times fondly.

And to Lee Dowling — I could tell you really cared about building better products when you tried forming a mini startup inside the company to build out the customer chatbot. I remember talking about The Lean Startup and you mentioned the 5 Whys. I could tell at that moment that you got this stuff.

Thank you to my father-in-law, Paul — a systems thinker through and through.

And finally — thank you to my wife, Abby, for being the ultimate support system in my life. She’s the best thing that’s ever happened to me.

Cheers to the next wave

If you’re reading this and you feel what I’m describing — that strange, electric feeling of realizing the ground is shifting — lean into it. I don’t have all the answers, but I know the tools are here and the problems are solvable. Go build something.

QR Code for jessepeplinski.com

Jesse Peplinski

I turn problems into prototypes.