6 ms·
I got to disagree with the whole continuity over ingenuity trope. It's how I can continue to remain modern as an engineer, and if done correctly, leads to vast
by gravity13 10y ago
I got to disagree with the whole continuity over ingenuity trope. It's how I can continue to remain modern as an engineer, and if done correctly, leads to vast gains in cognitive complexity by delegating concerns to newfangled tools that handle it better. Sure, it's a bit less stable, but this is how we keep the industry moving quickly, and I hope managers see it more in terms of trading technical debts than a stubborn "oh great, you want to introduce another new tool!?"
- Declanomous 10y agoIt's important to realize this is written from the perspective of an employer. For an employer, it is much more important that someone can easily take up the reins if something happens to you. From a companies perspective, it is best if their employees are easily replaceable. Employees that can't easily be replaced are expensive. They have the ability to command a higher salary and can force companies to do things they wouldn't otherwise do. From the perspective of an employee, the company is forcing you to stagnate and become someone that is easily replaced. I don't blame anyone for being insulted by this. The company is advancing their own interests at the cost of their own. Nobody enjoys being forced to do something. So while an employee forced to work in a certain way can be expected to be bent out of shape, so can an employer whose hand has been forced by an employee. The adage 'shit flows downhill' is true, and the intractable employee will soon find themselves swimming in it. A company may decide to cut their losses early if you are actively making your position harder to fill. From their perspective, the longer they wait, the more deeply entrenched you become. Companies value reliability. They want someone they can count on. The same goes for people. If your manager doesn't feel they can trust you, if they are consistently afraid that you will embarrass them, then you are a liability to them. If you aren't outright fired, you will be kept on a very short leash. There are a lot of benefits to toeing the company line, insulting as it may seem. Should you find yourself in the good graces of your manager (and by extension, the good graces of the company), you will enjoy a remarkable amount of autonomy. By being dependable (if not predictable), you gain job security and autonomy. You will find your suggestions are taken more seriously, as nobody is left to wonder what trick you have up your sleeve. I totally understand where you are coming from. I am always looking for better tools for the job at hand. Companies move slow, and technology moves fast, and it's easy to be left behind if you move at the speed of the company. Ingratiating yourself to your company takes time too. It could be years before you get to use a new technology, at which point an even better tool shows up. The company has the upper hand in this situation. Changes probably won't come quickly. If you find yourself in a position where you aren't happy with the way you are allowed to do your job, oftentimes the easiest way to solve the problem is to find a new job.
- erikb 10y agoReasonable arguments. But what's the connection with the article or a previous comment? Also I've found that most managers know they should keep their team replacable, but also efficient. And they often end up treating long term replacability for short term efficiency gains, again and again and again. So while it should be a real issue it is less often than we coders worry.
- coredog64 10y agoEmployees that can't easily be replaced are expensive. They have the ability to command a higher salary and can force companies to do things they wouldn't otherwise do. A truck number of 1 is a bad deal all the way around unless the employee in question enjoys going without a vacation.
- rosser 10y agoRight, because your growth as an engineer trumps the company's concerns over having a stable code base. I can't count the number of times I've had to give some variation on this speech to junior engineers of one stripe or another: The company does not exist to give you cool things to hack on. The company exists to provide a product or service to its customers, from whom it collects revenue, in order to repay its investors, pay its employees and suppliers, and hopefully also make a profit. To the extent playing with cool, new, whiz-bang furthers those goals, it will happen, but whiz-bang is neither necessary nor sufficient for those goals. In fact, whiz-bang for its own sake can often be inimical to those goals. Also, nice false dichotomy.
- scrollaway 10y agoI don't agree with the comment you replied to for a variety of other reasons but your reply is really out there. You could say exactly the same thing about any job benefits including a salary. Whether it's "essential" to the company on paper doesn't mean much. We're blessed to work in an area where it's possible to grow your own skills while staying within the same company. If a company can provide this to its engineers, it's a win-win - employee skills improves, they want to stay longer, etc. And let's not forget humans, not AIs, are at the helm of those companies.
- rosser 10y agoAn employer is legally required to pay you for your time. They aren't anything whatsoever to let you build things that they're somehow going to depend on using NewHotness-0.1.3. EDIT: Look, I'm not saying growth and exploration are bad things. I'd never have learned the tools and technologies that have fed me for years now, or been able to expand those skills in ways that have made me tremendously valuable to the people who've decided to pay me nontrivial sums of money in exchange for my knowledge, skills, and time, if I hadn't been, as you say, "blessed" with opportunities to try new things. But there's a difference between acting like you're blessed, which to my mind entails exploration with respect for the needs of the folks who are paying you to explore, and gratitude for the opportunity to do so — and acting like you're entitled, which ignores those things, and treats it as an exercise in résumé-padding.
- badloginagain 10y agoShe mentions this directly- trying to find schedule appropriate projects that allow for prototyping and exploration.
- stephengillie 10y agoYour enthusiasm for new tools and the energy with which you embrace change is great. Don't lose that. But it's no fun to try to use something, and you can't because someone moved fast and broke things. It's even less fun when your customers are calling you because your site is down, and all you can say is "It's a problem with the platform." Before long, you get to choose between the platform you're paying for, and the customers who are paying you.
- studentrob 10y agoAll these comments are one-sided. Note that gravity13 said "if done correctly" There are pros and cons to adding new tools. Each situation is different and would ideally be decided by all the effected team members. It depends on the team, existing tools, product, whether it is released yet or not, and a myriad of other things. An engineer could install whatever he likes on his own machine or VM in his free time, if he has any. If other engineers have a problem with that, then like gay marriage and abortion, that is their problem. Similarly, if an engineer installs software willy-nilly on a production machine that has active users, I think we can all see how that is unreasonable. So the debate comes down to the in-between grey areas. Without being in the moment, none of us can comment on it towards any real conclusion.
- deleted 10y ago[deleted]