4 ms·
You also need management willing to prioritize engineering time to fixing that broken stuff, and engineers who actually know how to make non-broken stuff. My e
by colanderman 6y ago
You also need management willing to prioritize engineering time to fixing that broken stuff, and engineers who actually know how to make non-broken stuff. My experience is that having all three of these prerequisites is pretty rare.
- Jtsummers 6y agoI'm going to restate something that I said a few days ago: There are a number of hats developers are expected to wear today: 1. Developer of new features 2. Sustainer of prior code and features 3. Tester of all of this 4. Constant student (outside work because who'd pay their employees to learn?) The priority for the business is (1), so 2-4 get neglected. This compounds over time to mean that old code isn't properly refactored or rewritten when it should be, and none of the code is tested as thoroughly as it should be, and none but the smartest or most dedicated are really going to be perpetual students (or they'll choose to study things that interest them but don't help at work, like me). When the old code and poor tests create sufficient problems, you get a business failure or a total rewrite. Which strips out half (or more) of the features and the whole process gets restarted.
- TeMPOraL 6y agoDon't forget: 5. The mentor of younger developers. It's another thing some companies expect you to do, but don't allocate time for it, so at the point you finally know enough to not do a bad job, you're suddenly being pulled out of 1-4 and expected to do 5.
- Jtsummers 6y agoOof, we had a guy retire over that. In his appraisal he was dinged for not doing enough. They counted his training of new hires as 1 "point" (or whatever, the system was weird). They neglected to consider that he was training 5+ new hires in that year. He'd had enough, put in one last year to wrap some stuff up and then he was out and free.
- thelazydogsback 6y agoAnd also lots of devops likely these days: - Infrastructure design - Deployment - Monitoring / log-based debugging and fault tracing / handling customer issues In addition to wanting a "full stack" developer of course...
- Jtsummers 6y agoRight. It's the curse of the name. DevOps wasn't meant to be a role, but a philosophy of working and organization. But management (and practitioners) latched onto the idea of it as a role and hosed themselves. Now you've got a 20+ year veteran developer tasked with keeping dozens of servers properly configured, secured, and operating as well. At some point we have to accept that specialization isn't just for insects. It's helpful to have a proper sysadmin or DBA or whatever (appropriate to your domain) within the team, and not just diffuse those roles amongst the developers themselves.