5 ms·
> I'd love to work in a fantasy company that allows for fixing legacy code You're not supposed to ask. It's like a structural engineer asking if it's okay to s
by cwalv 2y ago
> I'd love to work in a fantasy company that allows for fixing legacy code
You're not supposed to ask. It's like a structural engineer asking if it's okay to spend time doing a geological survey; it's not optional. Or a CFO asking if it's okay to pay down high interest debt. If you're the 'engineer', you decide the extent it's necessary
- whatevaa 2y agoTotally no. Structural engineers also have to consider real life constraints, including cost. We are talking about working with existing structures, it's too late for geological surveys.
- tremon 2y agoThat totally depends on the surrounding configuration. If land subsidence was as common as security patches, they would totally be doing monthly surveys. Structural engineers also don't commonly change structural features after initial delivery; realistically, I would expect changing a two-lane bridge to a four-lane bridge to be more expensive than constructing a four-lane bridge where none exists.
- tomohawk 2y agoIt's why Scotty was always giving longer estimates that Kirk wanted, but Kirk was also able to require an emergency fix to save the ship. The estimate was building in the time to get it done without breaking too much other stuff. For emergency things, Scotty would be dealing with that after the emergency. If your captain is always requiring everything be done as an emergency with no recovery time, you've got bigger problems.
- rusk 2y agoScotty manages his tech debt
- DaiPlusPlus 2y agoScotty is a fictional character.
- actionfromafar 2y agoHis followers though, are REAL. (Unless declared integer.)
- zwnow 2y agoThats also not applicable in a business setting. If you have multi million line codebase, you simply cant refactor within reasonable time. Also refactoring can cause issues wich then need further fixing and refactoring. If I touch code that I am not supposed to touch or that does not relate to my direct task I will have HR talks. I'd be lucky to not get laid off for working on things that do not relate to my current task.
- danielovichdk 2y agoWhat field in software are you working in ?
- zwnow 2y agoCame from ERP development and now I am in webdev.
- tremon 2y agoThe Linux kernel is a multi-million line codebase, and refactoring still happens when needed. Let's not extrapolate from your limited data points as if they are representative for all codebases.
- peterarmstrong 2y agoNo. You discuss it with your manager, and you do it at the appropriate time. Having both created, refactored and deleted lots of technical debt over the past 25 years, trust me: you just don't get to go rogue because "you're the engineer". If you do that, it might turn into "you were the engineer". What if you spend a week or month refactoring something that needs a quick fix now and is being deleted in 1-2 years? That's waste, and if you went rogue, it's your fault. Besides, you always create added QA burden with large refactoring (yes even if you have tests), and you should not do that without a discussion first--even if you're the founder. Communicate with your manager and (if they agree) VP if needed, and do the right thing at the right time.
- cwalv 2y ago> No. You discuss it with your manager, and you do it at the appropriate time. Sure, if you're not sure if it's the right thing to do, talk to your manager or TL. A good engineering manager can help. If your manager "would never allow" it, they're not a good manager. Even for jobs much more menial than engineering, a good manager recognizes that autonomy/trust are critical for satisfaction and growth. If you're working someplace where you're "not allowed" to make the changes you "wish you could," you're doing yourself a disservice. Find someplace where you're not only "allowed," but expected to have (or develop) the judgement required to make these decisions. To be clear: "the business" expects (and in the medium/long term requires) engineers to make these decisions themselves. That is the job
- aleph_minus_one 2y ago> If you do that, it might turn into "you were the engineer". The correct solution would of course rather be "you were the manager". :-(