The Full Stack Developer Within
If you asked me two years ago what a full stack software developer was, I would have said that’s easy: a full stack developer is simply a software developer that really enjoys going to IHOP. I had no idea what it meant to be a full stack developer. I knew that they were some of the most important and highly respected people in the industry, but didn’t know what they did, nor understood what the term “full stack” meant. When you see “full-stack,” just think "do-it-all." When you see “stack,” just think about a software developer’s toolbox and the technologies they use.
Recently, I dedicated myself towards gaining a better understanding of full stack development. Over the past few weeks, I dove into Chris Northwood’s book “The Full Stack Developer” where he laid out a clear-cut overview of the essential job functions. While undoubtedly extending my technical knowledge, an equally important lesson was of the vitality of a roadmap-to-success. Before “The Full Stack Developer,” my understanding of a full stack developer’s job was cloudy at best. After taking time to understand the big picture, I have a clearer understanding of the knowledge required to perform this job at peak capacity. In other words, I have a roadmap-to-success and my approach to adding onto the base of my current knowledge will be more straightforward because of it. Whether were in finance, marketing, sales, accounting, or tech, the value of a roadmap-to-success has unquestioned merit, and it applies to everybody. Einstein once said, “If I had an hour to solve a problem, I’d spend 55 minutes thinking about the problem and 5 minutes thinking about solutions.” Taking the time to educate ourselves about the problem at hand (what we need to know in our field of expertise) will ultimately allow us to have a better understanding of the solution (simply applying ourselves to the learning material).
In addition to having the weight taken off our shoulders with a defined roadmap-to-success, taking the time to understand the ins-and-outs of our specific fields will allow for a greater appreciation of our work. I once spoke with someone about their own career journey and, right out of college, they found themselves in the middle of a large Fortune 500 tech company. Great job, great pay, no sense of purpose. They were lost in the machine, unable to recognize the value of their work. The best thing to do in this situation, as they put it, is to create context for oneself. In other words, answering the questions “Where do I belong within this organization?” and “What’s the meaning behind my work?” Finding out where our work fits in and understanding its interconnectivity with other aspects of the organization is the perfect recipe for gaining a newfound appreciation for our work and for the work of other employees. Ultimately, this feeling of interconnectivity is the essence of what it means to be a full stack developer, and the implications reach far beyond the world of tech.
For those of you interested in a deeper understanding of software development, I have listed extended resources for all 15 chapters from “The Full Stack Developer.” Some have already been a part of my roadmap-to-success and others have been added recently. If you’ve made it this far and have any additional resource recommendations (books, videos, podcasts, etc.), feel free to list them in the comments so that others, including myself, may benefit from them.
As always, thanks for reading, and good luck!
Chapter 1: The Modern Web
Web3: Never Bet Against Innovation | John Wu | TEDxBostonStudio
Chapter 2: Planning Your Work
Code Complete by Steve McConnell
Chapter 3: User Experience
Laws of UX: Using Psychology to Design Better Products & Services by Jon Yablonski
https://lawsofux.com/
Chapter 4: Designing Systems
Designing Data Intensive Applications by Martin Kleppmann
Chapter 5: Ethics
The Age of Surveillance Capitalism by Shoshana Zuboff
Chapter 6: Front End
CSS: The Definitive Guide by Eric A. Meyer
HTML and CSS: Design and Build Websites by Jon Duckett
Chapter 7: Testing
Chaos Engineering: System Resiliency in Practice by Casey Rosenthal, Nora Jones
Chapter 8: JavaScript
JavaScript: The Definitive Guide by David Flanagan
Chapter 9: Accessibility
Inclusive Design for a Digital World by Reginé Gilbert
Chapter 10: APIs
Mastering API Architecture by James Gough, Daniel Bryant, Matthew 🦦 A.
Chapter 11: Storing Data
NoSQL Distilled by Pramod S., Martin Fowler
https://sqlbolt.com/
Chapter 12: Security
The Unicorn Project by Gene Kim
The Phoenix Project by Gene Kim, Kevin Behr, George. Spafford
Chapter 13: Deployment
Continuous Delivery by Jez Humble, Dave Farley
Chapter 14: In Production
Building Secure and Reliable Systems by Heather Adkins, Betsy Beyer, et al.
Chapter 15: Constant Learning
Designing Data Intensive Applications by Martin Kleppmann
Note: this article was originally published in October, 2023. Today, July 2024, I believe there was one aspect of full-stack development that the author missed: cloud computing.