/Career Advice

The Forty-Year Programmer

- Noah Gibbs tl;dr: "I’ll talk about things that didn’t make sense to me when I started programming, and now they’re the guiding stars in my sky... it’s not about specific technologies. Technologies come and go. Languages come and go. They can’t be your sky."

featured in #350


What Distinguishes Great Software Engineers?

- Abi Noda tl;dr: Based on a research paper by Microsoft, Abi discusses the five traits: (1) Being a competent coder - paying attention to details, capable of handling complexity. (2) Maximizing current value of their work - anticipating future needs, intentional about trade-offs. (3) Practicing informed decision-making - gathering information to make informed decisions, open-minded. (4) Enabling others to make decisions efficiently - creates shared understanding with others. (5) Continuous learning - capacity to learn. 

featured in #349


First Focus. Then Simplify

- John Cutler tl;dr: "Imagine two people - Person A acknowledges the complex problem, and focuses. Person B doesn’t see the complex problem, and simplifies." Both approaches may seem very similar at first glance. "Focus looks like simplification. Simplification looks like focus." But when things go wrong, as they tend to do, Person B will make bad decisions. They’ll pick bad strategies and tactics and spread the lack of context awareness to their team. 

featured in #347


Stick To Tinkering

- Walid Ziouche tl;dr: "I’m witnessing a generation proficient with NextJS, but not much interaction with Node, the runtime, or, the system in our case. I’ve seen some devs unable to start a project without a ready-made boilerplate, generator or template... Web developers lacking a good understating around HTTP verbs, statelessness, status codes, routing and url parts, .. the behind the scene mechanics of the web." Walid discusses the implications of this and the remedy - learning by tinkering with lower level systems.

featured in #347


The Joy Of Programming

- Donald Raab tl;dr: "The most important lesson I have taught developers over the years is that programming is fun. If you are programming, and you are not having fun, then you may be doing it wrong. It may not be your fault. Ask for help. We are at our most creative when programming is fun. Creativity is play. We need to be creative to solve the complex problems we are faced with today."

featured in #345


How Do I Make Sure My Work Is Visible?

tl;dr: James covers: (1) The difficulty of remembering what you’re working on in a fast-paced environment when every week feels like a blur. (2) Brag documents, a great way to tackle the above problem. (3) The process James uses to write one, an iterative process throughout each week. (4) An evolution of brag documents into internal newsletters.

featured in #344


Choosing Your Next Job

- Molly Graham tl;dr: "At some point in your career you stop looking for jobs and start looking for holes that are shaped like you.” Molly discusses 4 tools that can help guide decision making: (1) A love-good-hate-bad venn diagram. (2) The stool analogy. (3) The dating metaphor. (4) Imagining your day, each discussed here. 

featured in #342


Knuth And McIlroy Approach A Problem

- Matt Rickard tl;dr: "A computer scientist was writing a column about Literate Programming – one of Knuth's ideas on how documentation and code should live side-by-side. So he asked both Knuth and McIlroy to write a program: "Given a text file and integer k, print the k most common words in the file - and the number of their occurrences - in decreasing frequency."

featured in #342


How Do I Progress To The Next Level In My Career?

- James Stanier tl;dr: "Progressing, in general, is a two-stage problem: you need to discover where it is that you’d like to go, and then you need to take positive action to work towards it. In my experience, many people over index on the prescriptive “how” before spending enough time on the “what”. The search space of possibilities for your career trajectory is effectively unbounded, and can rarely be predicted over long enough periods of time. This is a feature, not a bug, and should be embraced."

featured in #341


The Secret To Getting To The Staff+ Level? Leverage

- Camille Fournier tl;dr: "You need to develop skills that give you the leverage to show bigger value to the company. These could be interpersonal skills that make you more trusted and valued, execution skills that let you drive complex projects to success, strategic skills that give you bigger ideas and the ability to sell them, or, occasionally, expert skills that make you very hard to replace."

featured in #341