3 ms·
One shock of programming at job vs class-based learning is the art of working in an existing codebase with many other coders and stakeholders. You might like pr
by softwaredoug 5y ago
One shock of programming at job vs class-based learning is the art of working in an existing codebase with many other coders and stakeholders. You might like programming for fun, but might not find it as fun to do it as a job.
This means things like
- reading and understanding an existing, complex codebase
- solving your problem in a way that doesn’t harm existing functionality
- refactoring old code to solve new problems or to be more reliable
- common workflows using version control
- writing testable code that can evolve over the years
- negotiating technical scope with stakeholders
- navigating technical risk and technical debt
I think this stuff is teachable, but it’s hard to give someone a project where the existing code base must keep working (or else the company goes under) but also here’s 4 features to implement in a given aggressive timeframe. Much of having a job coding is about these kinds of decisions.
I say all this so you can decide whether this is what you want or if you just like coding as a hobby.
- spuz 5y agoFor what it's worth, I love coding as a hobby, and I hate all those aspects of coding as a job that you specified. However I still love coding as a job because it lets me do all the fun parts as well. Even if 75% of the time you are fighting with an unstable test suite or trying to budget for time on a dozen competing priorities that still leaves 25% of the time where you are solving interesting problems and doing something actually creative. Don't let all these scary sounding challenges put you off. If you are smart enough to learn how to code then you are smart enough to learn how to do all the other boring things. And a job where 25% of the time (hopefully it's more than that for most programmers) you are being paid to do something you love is a great job.