Chapter 1. Programmer to Engineer
Foundational skills, always tedious to learn, seem to be obsolete. And they might be, if there was a shortcut to being an expert. But the path to expertise requires a grounding in facts.
Ethan Mollick, from Co-Intelligence (Portfolio, 2024)
Being a software engineer requires a vast array of skills across a variety of areas. Understanding what your customer is actually asking for. Translating those needs into maintainable code. Writing tests to ensure that the software does what you think it should do. Creating user interfaces that work. Architecture. Working with data. Getting code to production. If you want to grow your career as a software practitioner, you must focus on more than just writing code. You must embrace the entire craft of engineering software.
To get from programmer to engineer, you need to master the fundamental skills across the software development lifecycle (SDLC), work smart, acknowledge the things you don’t know, and figure out how to close the gaps on those things. In this chapter, you’ll get some tips and advice to get you started. You’ll learn about the various paths to becoming an engineer as well as the key knowledge those approaches often omit. Ultimately, this chapter will give you hard-earned advice that will help you on your journey, smoothing the road from programmer to engineer.
But first, let’s talk about what it means to be a software engineer.
An Engineer by Any Other Name
Software is filled with overloaded ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access