You'll always remain at junior level if you think "it works" is an excuse for bad code.
Stop playing the victim when someone with more experience tears apart your code. We aren't trying to find faults. We are trying to save the product.
I recently reviewed a specific codebase. It was a disaster. Thousands of lines stuffed into two files, zero structure, just a big ball of mud. (They took the monolith literally)
So, I did the work. I segregated the code. I introduced folders. I analyzed the whole codebase, the imports, the logic, the functions, let's just say I made it modular. I cleaned up the mess.
The feedback?(More of gossip really but....) "This wasn't necessary. The original code worked."
"He just wants to make us look wrong" (If you do your job well then mine takes me 10 minutes instead of hours). "There's always something to 'fix' with him. Why change it if it runs?"
Let’s get one thing straight.
"It works" is not a standard. It's the bare minimum requirement for software to exist. A house built without pillars works fine until the wind blows.
When I break your code into modules, I am not feeding my ego. I am reducing the cognitive load for the next person who has to read this.
If you think modularity is optional or just an opinion, you haven't mastered simplicity. You’ve mastered laziness and mediocrity.
Until you can appreciate why we force you to structure your code, you aren't ready for the next level. 👇 Devs: Does "it works" ever justify a 2,000-line file?
Top comments (8)
It is easy to get comfortable just doing what I’m told, but I realize that to move past being a junior, I need to understand the "why" behind my work. I’m going to focus more on problem-solving and how my code affects the whole project.
Great 👍🏾. Good luck
Thank you Daniel :)
No, dude, 2000 lines isn't enough! I have 5000 lines in my project, plus two files with 1000 lines each. I think that many lines are good for the author, but for "code readers" it's a disaster. I think I'm one of those guys you mentioned in the article.
P.S. By the way, structures in GLSL (the shader language) require a lot of resources, so the language itself forces you to write non-edge code.
Do you work alone? If so it may be fine
Well, it depends on what you mean by "Alone." Yes, I work alone, but I have the power of AI at my disposal.
I was once like this if it works it works until I spent an evening fixing an issue that was missed due to long lines of code. Now as a convert I feel your pain it sometimes takes a person to be burned before they fix up. It was the case for me it was a good read and an even better reminder for standardization across the board.
True! Continuous learning = the only way out of junior purgatory.
The trap: Coding CRUD apps forever without understanding why they work.
The unlock: One deep dive (sharding, state machines, platform engineering) > 100 LeetCode mediums.
Daniel's wake-up call hits because we've all been there. Pick one hard thing. Master it. Level up.
What's your "forever junior" wake-up moment? 🚀