2 ms·
My question to you: "Do you believe in the product or mission of your current company?" If you do, then I would recommend against leaving at this point. You mig
by virmundi 12y ago
My question to you: "Do you believe in the product or mission of your current company?" If you do, then I would recommend against leaving at this point. You might be able to change the culture.
Most of my experience is rebuilding software that's in really deep. Often the team is reluctant to make changes. What I do is make changes anyway. But I start small. I add unit tests around existing code. I try to cover exceptional cases in those unit tests (bad input, network loss, etc). I can then say, "At least you know how component X works".
From unit tests, I branch out to refactoring code that calls that unit. Often this is changing static method calls into objects with dependency injection. While I'm at this, I unit test the changed components.
Eventually, I get the code up to higher standard. Along the way I can start to produce artifacts that I take to management. Code coverage, # of passing tests, # of failing tests, who broke the build. Team members often want to see these too. Those who still don't want change either leave or come around due to managerial pressure (a valid use of management).
You might be able to do this as well. You might not. It could be that best you can do is carve out a little fiefdom of standards sanity. If you decide to leave after your year's up, fine. You now have experience in the field with a modern tool set. If you improved the conditions, you might re-evaluate.
- bargaintuna 12y agoDefinitely. I'll point out though that my goal is not experience with this "modern" tool set. I'm plenty comfortable with the tool set we have, and the technology we use. It's the way in which we use it that's frustrating. My goal was to learn and continue growing as a developer, while building something I care about. I don't feel I'm getting the first part of that. I feel as though I've been trying, in my short time here, exactly what you're suggesting here. It turns out that it has been a fairly major source of friction, because small incremental changes are really hard to float unless there is consensus on where the future of the codebase is going, which we certainly don't have. So a lot of the changes I try to "make anyway" seem to meet push-back from my team, despite my many efforts to argue for long-term goals, or even the value of the single incremental piece. The friction I mentioned surrounds this push-back, but the feeling I'm getting is that this push-back is based in an unwillingness to try new ideas. As I mentioned, maybe this is due to my lack of experience convincing people of new ideas, which makes me think I need even more to be in a learning environment.