3 ms·
You're missing a critical part of the equation: the inexperienced software engineer. Inexperienced software engineers are less expensive, so you can hire more
by delinka 7y ago
You're missing a critical part of the equation: the inexperienced software engineer.
Inexperienced software engineers are less expensive, so you can hire more for your payroll budget. These juniors tend to think "yeah, that sounds pretty straightforward. I can do that in a week." It actually takes two months. It takes experience to estimate even nearly correctly. And MBAs love to buy some less expensive, less experienced engineers with their money.
- shaftway 7y agoOr even worse, they actually do knock it out way faster than expected, but it's buggy and unmaintainable. I was that inexperienced software engineer once. At the time a grizzled veteran tried to drop a knowledge bomb on me and said "A good programmer can write about 14 lines of code per day". It took me a really long time to figure out that he had mis-quoted something. It should have been "A good programmer only writes about 14 lines of code a day, they're just the right 14 lines."
- deleted 7y ago[deleted]
- bluGill 7y agoThat is an average. On a good day you can write 100, but then you need a week and a half to figure out how to write the next line. New projects are easy, I can write 500 a day for several months before I get to those last hard features that slow me down to 1 a day for a while.
- DonHopkins 7y agoYou should also get credit for the number of lines of code you read every day! Some days you read pages and pages of code, but don't write a single line. However, that makes it possible to figure out just the right 14 lines of code to write the next day, by reusing instead of duplicating code that's already there.
- gubbrora 7y agoThis is highly codebase dependant ime. The less you have to read and think about wtf is going on the more you can write. And generally the stronger coupling the more you have to read.
- zoomablemind 7y agoThe juniors are usually terrified by prospects of being responsible, so they get frozen or stuck The estimating for juniors should be optional by default, but progress self-tracking mandatory. This way it yields facts without guilt and overpromiss. The team should estimate, the team should deliver.