Ask HN: What makes a good software engineer?
In your opinion, what makes a good software engineer?
What qualities, what skills, etc. makes a software engineer better, and how do you recommend building those skills?
What qualities, what skills, etc. makes a software engineer better, and how do you recommend building those skills?
7 comments
[ 3.7 ms ] story [ 27.0 ms ] threadhttps://news.ycombinator.com/item?id=14708350
https://news.ycombinator.com/item?id=2767433
2. Ability to gather requirements: why are you building what you're building? (More here: https://codewithoutrules.com/2017/02/19/ai-replace-programme...)
3. Focus on solving problems, and when you're more advanced identifying problems. This means coding becomes a means to an end, rather than your goal. (more here: https://codewithoutrules.com/2017/07/10/stop-writing-softwar... and )
4. A focus on productivity, which means a focus on doing less work, and specifically unnecessary work. This goes against the grain for many programmers, who want to code. Goal is to solve problems with as little work as possible, though. (More here: https://codewithoutrules.com/2017/10/04/technical-skills-pro...)
2. Humble - as a software engineer you are going to fail at something most days. Most of the the time you will experience failure multiple times per day, perhaps even hundreds of times. A proud or arrogant engineer will waste time and calories being frustrated with failure. A humble engineer will start looking for help anywhere they can find it, and doesn't let constant failure impede their workflow.
3. Team player - the industry loves to idolize 'rockstars'. However software engineering is rarely a one man job, everyone has off days, and a team can move only as fast as its slowest member. Helping other engineers when they get stuck, even in little ways, is essential to the progress of yourself and the team.
4. Chops - software engineering is a multidisciplinary craft that requires knowledge, judgement, and implementation. Knowing what to implement, how to implement it, and whether or not you should / if there's a better way takes years of practice and training. Having a habit of building your skills, improving a bit every day is part of what makes a decent engineer into a great engineer.