







There are many reasons to consider hiring inexperienced software engineers into your team, beyond the commonly discussed factors of cost and social responsibility. Hire to maximise team effectiveness; not to maximise team size. Adding more people increases the communication and synchronisation overhead in the team. Growing a team has rapidly diminishing returns. However, adding the... Read more »
Pure and impure software engineering
Why do solo game developers tend to get into fights with big tech engineers? Why do high-profile external hires to large companies often fizzle out? Why is AI-assisted development amazing for some engineers and completely useless for others?

Why nobody hires junior developers anymore
While the number of job opportunities for software developer skyrockets together with salaries all around the world, fresh grads and junior developers struggle to even get invited for the interviews. Why does it happen and can we do anything about it?

The Economics of Software Teams: Why Most Engineering Organizations Are Flying Blind
A breakdown of what software development teams actually cost, what they need to generate to be financially viable, and why most organizations have no visibility into either number.

Undervalued Software Engineering Skills: Writing Well
I have been coaching several experienced software engineers to further grow professionally, since transitioning [https://blog.pragmaticengineer.com/things-ive-learned-transitioning-from-engineer-to-engineering-manager/] to being an engineering manager. I have noticed a few skills that people often underestimate the importance of developing. Skills that add a
AI makes weak engineers less harmful
Like other kinds of puzzle-solving, software engineering ability is strongly heavy-tailed. The strongest engineers produce way more useful output than the average, and the weakest engineers often are actively net-negative: instead of moving projects along, they create problems that their colleagues have to spend time solving. That’s why many tech companies try to build a small, ludicrously well-paid team instead of a large team of more average engineers, and why so far this seems to be a winning strategy.

Software Developers Should Have Sysadmin Experience
The differences between system administrators and software developers as well as why all software developers should have some amount of sysadmin experience.

Hiring (and Retaining) a Diverse Engineering Team
Stories from six engineering leaders who succeeded in building and growing diverse teams. Hiring approaches, retention tactics and strategies.

The Real Reason We Still Need Software Developers in the World of AI
The dream of AI churning out perfect production-ready code doesn’t hold up against the reality of modern software development.

Don't hire top talent; hire for weaknesses. - Benji's Blog
Design your hiring process to find the right people to strengthen your teams' weaknesses, rather than trying to find the best people. Instead of "how can we find the smartest people?" think about "how can we find the people who will make our team stronger?"

In Praise of “Normal” Engineers
Software engineer Charity Majors challenges the "10x engineer" myth, arguing that true productivity lies in team performance, not individual brilliance. She encourages building workplaces where "normal" engineers can thrive. Are we focusing too much on hiring "the best" instead of the right people?

What do professional software developers need to know to succeed in an age of Artificial Intelligence?
Generative AI is showing early evidence of productivity gains for software developers, but concerns persist regarding workforce disruption and deskilling. We describe our research with 21 developers at the cutting edge of using AI, summarizing 12 of their work goals we uncovered, together with 75 associated tasks and the skills & knowledge for each, illustrating how developers use AI at work. From all of these, we distilled our findings in the form of 5 insights. We found that the skills & knowledge to be a successful AI-enhanced developer are organized into four domains (using Generative AI effectively, core software engineering, adjacent engineering, and adjacent non-engineering) deployed at critical junctures throughout a 6-step task workflow. In order to "future proof" developers for this age of AI, on-the-job learning initiatives and computer science degree programs will need to target both "soft" skills and the technical skills & knowledge in all four domains to reskill, upskill and safeguard against deskilling.

The developer’s dilemma
When it comes to making money, software developers are an odd bunch. Developers produce code, and code is in high demand. At a glance, it…
Why AI Makes Things Worse for Enterprise Teams, by Paul Ford
Why are so few engineering teams reaping the benefits of AI? On this week’s episode, Paul presents Rich with the findings from a recent report from CircleCI and

Theory and Memory: Two Forces Shaping Software Team Knowledge
How insights from cognitive science and social psychology explain why software knowledge is so hard to preserve

Habits of High-Functioning Teams
I often struggle to explain what it means to be part of a high-functioning software team. Sure, there are mountains of literature, and an entire genre of LinkedIn thought leadership that professes all kinds of guidelines and heuristics about what makes teams work, but in my experience, it’s hard to internalize these ideas and follow someone else’s model if you’ve never seen what good looks like.
Do AI-enabled companies need fewer people? | Seldo.com
AI-native startups are doing more with less — 40% smaller teams, 6x higher revenue per employee — and the data confirms it's not just hype. But the wave of new jobs I predicted hasn't materialized so far. Compute is replacing labor. Will that change?