Learn how to be a wildly successful small business programmer

Tag: Effectiveness (Page 1 of 4)

How to get hired as a team lead

I see people make three huge mistakes when trying to transition from a developer position to a leadership position.

1 – being a “good” developer with lots of experience makes you qualified to run a project or a team. It’s just not true. Being a “good” developer with lots of experience is necessary, but not sufficient, to successfully make this transition.

2 – the idea that you actually know what a well-run, effective project actually looks like. Most people have never even seen a well-run, effective project. They have little idea of the results regularly achieved by the best teams.

3 – not adjusting your interview answers to reflect the kind of thinking and strategizing effective leader engage in to be successful.

In this post I’ll show you things from the employer’s perspective and help you get on the right track to get hired as a team lead.

Continue reading

The Business Case for Better Software Practices

Steve McConnell hosted a webinar that I think more people need to see.

We actually know a fair bit about how to create high-functioning, effective software development organizations. The knowledge exists but not enough teams are applying it.

So, if your team is struggling in any way or if you are trying to convince your manager to invest in better practices, this talk is well worth watching.

Continue reading

Want to write defect-free software? Learn the Personal Software Process

I’m on a journey to become a better software developer by reducing the number of defects in my code. The Personal Software Process (PSP) is one of the few proven ways to achieve ultra-low defect rates. I did a deep dive on it over the last few months. And in this post I’m going to tell you everything you need to know about PSP.

Continue reading

How I intend to become a better software developer

My survey of the computer science literature suggests there are only two economical ways to achieve extremely low defect rates (< 1 defect per KLOC). The first way is to follow the Personal Software Process (PSP), which was created by Watts S. Humphrey at CMU. The second way is to use languages and tools that make it difficult to introduce errors into your code in the first place and easier to detect errors if you do manage to get some into your code. In this post I’m going to briefly discuss these two options and how I plan to explore them to become a better software developer.

Continue reading

4 books guaranteed to make you a better programmer

Figuring out what to work on next is one of the hardest problems in software engineering.

I know that’s a bold statement but I believe there’s ample evidence to support my claim. In a recent post, I talked about the value of always working on the most important thing. In it I wrote:

It’s difficult to identify the most important thing [to work on next] because the solution space is huge and it’s difficult to compare stories. But I’ve found the Theory of Constraints to be a helpful way to quickly zero in on high value areas without looking at the whole business in excruciating detail.

Continue reading

Cost of delay: how to calculate quantitative cost of delay and CD3

In my last post, I introduced you to qualitative cost of delay and CD3. I argued that rational teams should order their backlog for maximum economic benefit and that you can use cost of delay divided by duration (CD3) to do that. Because software developers aren’t accountants, I used the easier to understand qualitative cost of delay and CD3 in my examples. But in this post I’m going to discuss at the advantages of switching to quantitative cost of delay.

I know this stuff isn’t as interesting as reading about the latest advances in AI or your favorite framework. But trust me when I say that learning to order your backlog by quantitative CD3 will help you take your effectiveness to the next level.

Continue reading

Cost of delay: prioritize your product backlog by CD3

Ordering your backlog for maximum economic benefit is a hard problem. The average team is being pulled in several directions at once. New features requests, technical debt, existing defects, non-functional requirements, security, risk mitigation, resource shortages, and more are all competing for your team’s attention. So, how does a rational team decide what to work on? In this post, I’m going to show you how to prioritize your product backlog by CD3, which is cost of delay divided by duration.

Continue reading

« Older posts