Engineering Leadership

Engineering Leadership

Essential Skills for Engineers to Thrive in the AI Era

Communication, adaptability, continuous learning, and engineering fundamentals are more crucial than ever!

Gregor Ojstersek's avatar
John Crickett's avatar
Gregor Ojstersek and John Crickett
Nov 30, 2025
∙ Paid

This week’s newsletter is sponsored by Augment Code.

Ship faster with context-aware AI.

Augment Code is built for real engineering teams. It understands your codebase across 10M+ lines, 10k+ files, and every repo in your stack, so it can actually help: writing functions, fixing CI issues, triaging incidents, and reviewing PRs.

All from your IDE or terminal. No vibes. Just progress.

Ship code faster

Thanks to Augment Code for sponsoring this newsletter, let’s get back to this week’s thought!


Intro

I recently had the pleasure of attending the TechLead conference in London, where I also gave a talk called: How AI is Impacting Engineering Leadership.

And one specific thing has stood out to me, while meeting and speaking to other engineers/engineering leaders at the conference:

A lot of people are curious about what the future will bring and what the core skills to focus on are in the AI era.

This has just confirmed what I am already hearing across the industry.

Here is also a picture collage from the conference:

I also had the pleasure to speak with John Crickett recently about the topic of how AI is impacting specifically engineers and his tips for thriving in the AI era.

And John shared a LOT of interesting insights, which I am sharing with you today!

Let’s introduce the guest author and get started.

Introducing John Crickett

John Crickett is a seasoned engineering professional with over 25 years of experience in the engineering industry. He has worked both as a senior IC (Staff+) and a senior manager (VP, Head of Software Development).

He is also an author of Coding Challenges, where he regularly shares great ideas for projects and the process behind building real-world applications. My favorite → building a Redis CLI tool.

Check out Coding Challenges and use my code ENGLEADER for 40% off. John is doing a paid workshop on December 12th at 17:00 GMT, and if you are a paid subscriber, you can attend that for free!

Fun fact: John is also a guest author with the most appearances in the newsletter! This is our 6th collaboration, and you can check the 5 previous articles here:

  • 12 ways to become a CTO

  • From invisible to in-demand: LinkedIn for engineers and managers Part 1

  • From invisible to in-demand: LinkedIn for engineers and managers Part 2

  • Become the engineer everyone wants to work with

  • Become a better engineer by working on side projects

My Full Conversation With John

You can watch/listen to the video below for the full conversation, or you can keep reading for the overview of our conversation.

Let’s start!

Core Skills that Engineers Should Prioritize Today

To start off the conversation, I asked John to tell us what the core skills are that engineers should prioritize today.

He mentioned that clear communication has always been very important and is just going to be more and more important as time goes on, especially since most interaction with AI is and will be written or spoken.

As AI speeds up things like coding, documentation, and even parts of code reviews, we can spend more time focusing on the product itself. That makes skills like stakeholder management, project management, domain knowledge, and understanding what the business and users actually need even more valuable.

Also important to mention is that now we have more tools and can be more productive, we also need to be more adaptable. We have to learn new tools quickly, absorb new domain knowledge, and adjust to changes faster.

All of this relies on communication. Whether you’re using a chat interface to create documentation, a presentation, a PRD, or giving instructions to a coding agent, clear communication is the foundation for using AI effectively.

I also added that pure human-related skills and overall problem-solving abilities will be more and more important as time goes on, and as tools for development get better and better.

John also mentioned a quote from Albert Einstein:

“If I had an hour to solve a problem, I’d spend 55 minutes thinking about the problem and 5 minutes thinking about solutions.”

That idea fits perfectly today. AI can generate solutions incredibly fast, so the real skill is defining the problem clearly.

How do we understand the problem? How do we clarify what it is and what the constraints are? That’s where problem-solving skills are very important → more important than ever.

And they’re closely connected to people skills, because questions like “What is the problem?”, “What are the constraints?” and “What does a good solution look like?” all require talking to product owners, users, and other stakeholders.

Habits that Engineers Should Focus On

John mentioned that the main habit he keeps coming back to is curiosity. When you’re curious, you naturally ask better questions. You dig into things like:

  • What are we trying to build?

  • Why does it matter?

  • Who cares about this?

That helps you gather the right information, define the real problem, and then use AI to generate solutions quickly and effectively.

The second habit he mentioned is continuous learning.

We’ve both been in this industry long enough to see how fast it changes. There’s always something new to learn. Sometimes it’s a fresh take on an old idea, sometimes it’s truly new, and sometimes it’s a dead end.

But if you keep learning, you start to recognize patterns. You can tell what’s worth exploring and what isn’t. You also get better at connecting new ideas to what you already know.

He also suggests building small routines for both. For curiosity, pause and ask one more question to make sure you really understand the problem.

For learning, set aside 10–15 minutes a day → read a newsletter, pick up a book, explore a topic in your domain, or even read about areas like stakeholder management, consulting, or something else relevant to your work.

Over time, those small habits add up and broaden your understanding far beyond just tech.

Curiosity == Growth Mindset

I also added that I like to connect curiosity with having a growth mindset.

One of my favorite interview questions for engineers is: “What new things have you learned in the last six months?” The answer tells you a lot, not just what they have learned, but how they talk about it.

Do they smile? Do they sound excited about learning? What resources do they use? What books are they reading? All of that matters.

Some people may think this isn’t important, but in our industry it’s essential. If you’re not learning and growing, you’re falling behind, especially now, when things move so fast.

Let’s next get into how to actually think about what is worth learning and what is not.

The Mindset Behind Exploring AI Tools

John mentioned that while most AI tools are still early, it’s worth trying as many as you can. Companies building AI tools are taking different approaches, and people are still figuring out what these tools should become.

And we shouldn’t limit ourselves to just coding tools like Cursor, Windsurf, Claude Code, etc. There are so many AI tools outside of pure software engineering that can be incredibly helpful. For example, chat interfaces can help you refine requirements, review documents, point out what’s missing, or help you iterate on ideas.

Even the tool we’re using to record this conversation uses AI to edit, transcribe, and clean up audio, and it’s surprisingly accurate. Tools like this are often more useful in day-to-day work than coding agents. A lot of our jobs involve writing, researching, preparing content, and processing audio/video, not just writing code.

As software engineers, we like to imagine we spend all day coding, but the reality is we have meetings, we write and update documents, we summarize notes, and we go through long docs to find the parts we actually need. AI can help with all of that.

So don’t just experiment with coding agents. Look at how AI tools can reduce friction in all parts of your work and make the non-coding parts easier and faster, too.

Use an AI Tool That Actually Helps You Be More Productive and Stick With It

I also added that A lot of people start using a new tool just because someone online says that a certain tool is great, or because a colleague recommended them, or because they saw a post on X. They make the jump too fast, without thinking about whether the tool actually helps their workflow.

But the real point of using a tool is to make your work easier, faster, or better.

So my advice is: stick with what actually works for you. Don’t keep switching from one shiny tool to the next, that usually makes you less productive.

Every new tool means new onboarding, new shortcuts, new habits, and time spent figuring things out instead of doing your work.

Use the tools that genuinely help you. If Cursor works for you, stick with it. If you prefer Claude Code, use that for a while. The goal isn’t to use a tool just for the sake of using it, or because everyone says how great it is. The goal is to choose the ones that make you better at what you do.

John also added that it’s important to focus on your bottlenecks. He’s been in the industry for almost 30 years, and writing code usually isn’t the part that slows him down, though AI can still help and boost productivity in some cases.

The point is that you don’t have to use AI in only one area. Look for all the places it can help.

Let’s get into what to avoid when it comes to AI tools.

Misusing AI → What to Avoid

John mentioned 3 main examples:

  1. The first obvious example of misuse is “vibe coding”.

Some people took the original idea too literally, they think it means giving the AI vague instructions like “build me a website that does X,” not checking the code, and just hoping it works.

But the real point was never to avoid thinking. You still need clear requirements → without them, you won’t get good results.

  1. The second misuse is blindly trusting whatever AI gives you.

That’s risky. Whether the code comes from AI, another engineer, or even your own hands, the rule is the same:

Trust but verify.

He’s written code that looked perfect at first glance, only to find an off-by-one error later. That’s why we write tests, get reviews, and double-check our own work.

  1. The third misuse is letting AI do everything and letting your own skills fade.

We just saw Cloudflare go down, which took out access to many AI tools. If you depend on them completely, you’re stuck the moment they go offline.

And outages aren’t the only risk, these companies burn huge amounts of money in a shaky economy. If one major player fails to raise funding, it could trigger a collapse across the industry. Tools might disappear, become too expensive, or shift to less accessible open-source setups that come with their own limitations.

So it’s important to keep your skills sharp. You don’t want to face a 3 AM incident and be helpless because the AI is down. Keep practicing, write code yourself sometimes, and maintain your ability to solve problems without assistance.

Addy Osmani recently mentioned in a podcast that he occasionally sets aside time to work without AI → maybe a day each week or each month. It’s a great habit: it keeps you capable even when the tools aren’t there to help.

Engineers Starting Their Careers Today Have Weaker Fundamentals Than Engineers 10 Years Ago

I also mentioned that engineers entering the industry now often have weaker engineering fundamentals because the tools keep getting better.

The people who understand core engineering concepts deeply will have a real advantage going forward. It’s also the reason why junior engineers struggle to get roles: many haven’t built a strong foundation yet.

Another common issue I see is engineers creating a PR without even checking the code. They just write a prompt, take the AI’s output, and submit it.

That’s something you should absolutely avoid. It doesn’t make you a good engineer, and it’s not fair to your fellow engineers. You’re the one responsible for making sure your code works and behaves correctly.

Now, shifting to careers.

Areas That Will Become More Valuable in the Next 1–5 Years

This post is for paid subscribers

Already a paid subscriber? Sign in
John Crickett's avatar
A guest post by
John Crickett
Helping software engineers excel.
Subscribe to John
© 2026 Gregor Ojstersek · Privacy ∙ Terms ∙ Collection notice
Start your SubstackGet the app
Substack is the home for great culture