I had to take a few days to write this. I'll also say if you feel personally attacked by the end of this thats on you and I can't do anything about it. ------------------------------------------------------------------------ In my 11yrs in tech I've noticed a skill that the best of the best have...troubleshooting. I would like to consider myself one of the best so this is a skill I work on a lot. Oh and best here isn't just programming. I'm talking about anyone worth looking up to, people who make the real money, people who always keep a check. As I get grumpy with age I find that the one thing that bothers me more than anything is people who aren't jr level/have been in industry 2+ yrs not knowing how to troubleshoot. Troubleshooting is sometimes less than 10% of your job. If you get good at it you start becoming the go to for answers, make more money, and better at your job overall. > "These young folks seem scared to touch a keyboard" -30yr old me This quote is funny because I'm not considered old at work nor young. Young to me is less than 5yrs in industry. You make more friends and gain more knowledge from others if you willing to learn how to troubleshoot. Especially as a developer you wrote the code...how are you not interested in fixing broken things, learning the system you're adding/modifying parts in, or understanding under the hood of what your working on? Its so lazy of you to not learn a core skill of being a team player and expecting these big salaries. **So how do we fix this?** I'd like to start by saying I blame college. College doesn't stress the importance of troubleshooting in your day to day. If you can't help solve problems what value do you add to the team? Not just build new feature problems (documentation is a different old person rant), but maintaining what you have. What is my solution? Make everyone be on a rotation to fix bugs/doing improvements. I know it's not the cool and sexy work, but there is value in fixing bugs and/ir making improvements. You could be looking at a new part of the system, making something more architectural stable, or learning a new stack/skill/whatever. Everyone now works in sprints so there is a few ways to do this but there are only 2 I personally like... 1. pick 5-10% of your teams to tackle bugs and improvements in a sprint. Nobody can do 2 sprints in a row and you have to at least have 1 sprint every 30 days. 2. Require that every sprint 5-10% of the work/active tickets must be bugs or improvements. I've found I like the vibes of \#2 the most but \#1 makes sure that nobody skips out of this shared experience. How have you been able to implement this? ----------------------------------------- The easiest way is a simple "hey we are changing up how this sprint is done. Same amount of points/efforts but we want to try to get our tech debt down and try to get more people familiar with different areas of the system". TLDR: I don't have the deciding power, BUT I have just pull in bugs/improvements from the backlog into my work if I got stuck. Allowing me to maybe improve something in a similar area of my new feature and take a task off the team plate. Doing this a mid/sr level engineer and being successful has encouraged my team to follow suit and gotten us through a lot of our backlog faster. Anything else? -------------- Nope I've just had this little mini rant on my heart and mind lately. I know it's not really a fair rant and a touchy topic, BUT I think troubleshooting is a core skill that the tech industry is losing and that saddens me for the future. Especially with all the blind trust in AI.