From Software Developer to Software Engineer

When it comes to job titles of people who write code, the most common ones are software developers and software engineers. But what is the difference between the two? Ian Brayshaw argues that the two should not be treated as synonyms:

Engineers see the bigger picture. They recognise the importance of understanding how a business works, as well as knowing why they are building something. They will insist upon designing software first so that they know what the final outcome should be.

An engineer is not necessarily a better coder than a developer, but they do make sure that they are involved in every step of the process and they will question what they are doing before doing it.

I do agree that engineers take more responsibility then developers, however I argue that this mostly down to experience, and a drive to get to new levels of understanding. Curious people that keep asking “why” while producing software and learning more over time will inevitably become engineers.

Hartley Brody has a similar view on this. He says hackers, developers and engineers are different phrases for the seniority of someone who produces code:

A hacker can come up with solutions, but maybe they can’t look back after they’ve finished and realize how they came up with the solution. (…)

At some point, you level up and become a developer and a developer understands best practices. They’ve heard other developers say things like “you should put your scripts at the bottom of the webpage” … and you use those best practices to craft solutions but you don’t really understand beneath the best practices, beneath the abstractions. (…)

An engineer is someone who can get things done, craft a solution — they understand the best practices, but they also understand why they’re using the best practices that they are. They move into an understanding of the platform as a whole.

Getting things done and crafting solutions are two key qualities that engineers practice daily. And there is no better way to get there then by practicing these two. Take a problem, code a solution, understand it, learn from it - rinse and repeat with a bigger one.

Following this method, after many-many iterations one gets to being able of comfortably tackle all sorts of complex problems. When getting here then congratulations - you have made it from developer to software engineer.

Subscribe to my weekly newsletter to get articles like this in your inbox. It's a pretty good read - and the #1 tech newsletter on Substack.

The Pragmatic Engineer Podcast

Deepdives with experienced engineers and tech professionals who share their hard-earned lessons, interesting stories and advice they have on building software.

Listen to it on Spotify, on Apple, on YouTube, or on the web.

The Software Engineer's Guidebook

I wrote The Software Engineer's Guidebook. Here is what Tanya Reilly, senior principal engineer and author of The Staff Engineer's Path says about it:

"From performance reviews to P95 latency, from team dynamics to testing, Gergely demystifies all aspects of a software career. This book is well named: it really does feel like the missing guidebook for the whole industry."

The Software Engineer's Guidebook

Get the book here.

Annual conference talk

I do up to two conference talks per year. My next ones will be at at WAWTech in Warsaw, on 16-17 December 2025, and at Craft Conference in Budapest, on 29-30 May 2025, and Previous talks:

Gergely Orosz

Writing The Pragmatic Engineer Newsletter. Author of The Software Engineer's Guidebook. Previously at Uber, Microsoft, Skype, Skyscanner.

Amsterdam, Netherlands