4 ms·
In my experience developer productivity comes down to only three qualities: * Platform. If the given software platform or tech stack is slow then your develope
by austin-cheney 2y ago
In my experience developer productivity comes down to only three qualities:
* Platform. If the given software platform or tech stack is slow then your developers will be slow. There is absolutely nothing you can do to motivate them to become faster. For example the longer it takes to run any automated task, whether a build or test automation, the more distracted your developers will become. Try to get builds down to about 30 seconds.
* Initiative. If the platform is fast you then need to focus on encouraging your developers to write and release faster software. The faster the software executes the less time it will take to test both manually and with test automation. The less time it will take to debug issues and the more rapidly developers can experiment with other improvements. Reward increases to execution performance, operating cost reductions, and refactors that yield smaller code.
* Competence. Finally, if your developers aren’t competent then no amount of platform improvements or rewards will matter. Set extremely high standards for code quality and give your developers the time and support to rise to the challenge. By code quality I do not mean superficial or vanity nonsense. By code quality I mean writing original code that achieves desired business objectives with fewer dependencies and is absent identified bad practices. Don’t let the children run the daycare. If there are developers that cannot rise to the challenge them fire them and provide them a wonderful recommendation for their next opportunity. Code quality must be determined by evidence, not preference. Here is an example: https://github.com/prettydiff/wisdom/blob/master/performance_frontend.md https://github.com/prettydiff/wisdom/blob/master/performance...
That’s really it. As the manager you set the standards, but you must understand there is not so magical switch that makes your developers deliver code faster. If you are serious about this you have a lot of work to do. You absolutely have to understand rapid delivery can only occur after your leadership sets the right conditions, using evidence, and doesn’t waver.
- sk11001 2y agoYou're missing motivation and productivity as two of the important qualities. There's a difference between being competent and being able to get yourself to do the work. And amongst the people who do put in the hours there will still be a lot of variation in the amount of output they have.
- austin-cheney 2y agoMotivation is factored into initiative and rewards. My personal motivation was always personal time. If I accomplish all my assignments in the first two hours of the day then I have the rest of the day to do other things. You don’t have to be smart or a great programmer to be a 10x developer. You just have to ask the right critical questions and be willing to not do the same stupid shit over and over like everyone else. That’s initiative.