Skip to main content

Command Palette

Search for a command to run...

Scanning the market, finding the gaps

Updated
4 min read
Scanning the market, finding the gaps
O

Passionate about cloud computing, distributed systems, and system design.

Every few months, I scan the job market. I want to know where I stand and whether I'm still moving in the right direction.

This time, I went through several full interview processes.

I targeted scaleups and startups. I assumed that smaller companies are more agile when it comes to rapid changes in our industry - so if there's a drastic shift in how software engineers are hired today, I'd expect them to adapt faster.


What's actually shifting

The clearest thing I see is that companies want engineers who own more.

Problem discovery, building, shipping, learning from users, repeat. New roles are emerging around this, like AI Engineering, Forward Deployment Engineering, things that didn't have names a few years ago.

For a product engineer, full-stack is becoming the default. Outside of platform teams or niche domains, the argument for deep specialization is getting weaker. Although with AI coding tools closing skill gaps faster than ever, there's a case that meaningful specialization is becoming viable again.

The direction feels right. It's close to what I'm already doing at Templafy. Wearing the hat of a Discovery Engineer to figure out what to build before building it. Sitting with ambiguous problems and leveraging AI. But there are real gaps, and I'll get to those shortly.


How interviews are changing

Companies I interviewed with are using simplified real-world tasks for problem-solving rounds. The focus is shifting toward decomposing problems from first principles, asking good questions, and communicating your thinking clearly. Strong fundamentals in algorithms and data structures are still expected. You need to discuss optimizations, reason about trade-offs, and go deeper when pushed. My advice: refresh on core patterns, but don't over-invest.

I also faced AI coding interviews, where you're given a task and expected to use AI tools to complete it. It reflects how we actually work today, and I expect more companies to adopt this format. I don't have a magic preparation tip here beyond continuing to use coding agents and LLM tools, learning how things work at a deeper level, and being deliberate about how you communicate your thoughts.

System design is still very much present and, in my opinion, isn't going anywhere. As the individual contributor scope widens, the bar for systems thinking is only going up.


Where I have to be honest with myself

My core stack is .NET and React. Despite working with coding agents and building agentic systems, that still feels narrow today. Python is everywhere - especially in anything touching AI, which is basically everything interesting to me right now. Some companies hire on fundamentals and don't care much about language. But unfortunately, they're not the majority yet.

The frustrating part is that I do know Python. I use it in coding interviews. I teach kids computational thinking on weekends. I've written production scripts in it, even migrated some legacy .NET code to it once. But when someone asks if I know Python, I still pause.

I've been using the language just enough to get by for years, but never deep enough to feel like it's mine.

Frontend is similar. I've always worked near it, built end-to-end features with it, and understood it well enough. But there was always someone else on the team - the frontend person. Looking at the market now, that's no longer enough.


What I'm actually doing about it

More frontend ownership at work. Not just shipping features or reviewing PRs, but taking real responsibility - getting into architecture discussions, making decisions I'd normally defer, getting uncomfortable on purpose.

Going deeper in Python. Using it more for prototyping, working with user data, and building side projects. Reading to understand the language properly, not just reach for it when convenient. That might sound counterproductive in the age of coding agents. but here's what I keep coming back to: use AI to accelerate your learning and discover high-leverage work. And to get there, you sometimes need to slow down first.


A few years ago, aiming to be genuinely strong across the whole stack would have felt unrealistic. With LLMs where they are today, it might actually be achievable. And in the end, the ability to learn fast is more durable than any particular skill you have right now. Building that muscle is already high-leverage work.