I found an interesting change in my perspective upon becoming an actual Senior Developer. Of course my responsibilities increased: I'm expected to mentor lesser experienced devs and new employees, and talk with PMs, BAs, and upper management more. But of interest is deciding on some of the tools and technologies we use going forward. And sometimes, selling that to a team that may not be all that thrilled with my choices.
Formerly my choice of technology came down to one of two things. First, what was new, what was hot, what was growing in popularity with the speed of a rocket. I wanted in on those bandwagons and a lot of my peers did too. Second was technical specs. What was more performant, what elided boilerplate, what had good tooling.
But now I have not only newer concerns but larger ones and they are this: what does the team already know? What could the team learn quickly based on analogous things to technologies we already use? What is the expected lifespan of any new tech we bring into our business? What are the security and licensing ramifications? What other tools exist in its ecosystem, and are they mature?
These new concerns pretty much obliterate my previous measures of desirability. I'm more concerned with the long-term stability of software and the short-term training of people than I have ever been in my life. I'm concerned with budget, with time and money, despite that I'm NOT the one who wields the schedule.
I used to be the outspoken one that wasn't afraid to express his dissatisfaction with management for their clueless tech takes.
Now I am the boss monster. Now I feel I owe an apology to twenty or thirty years' worth of my former managers.
Top comments (0)