So, this decade is seeing a great deal of change with technologies and standards and everything really.
When I say new I mean devs with less than 3 years experience.
When I say old I mean devs with many years experience.
How do you manage both new and old developers?
More specifically stop new developers being naive and just accepting any language/framework that has been suggested to them or they just follow the hype - instead of fully understanding why we should use something.
And help older developers see the benefits of more recent technologies instead of just sticking with the vanilla language - granted using the vanilla has it's place but essentially trying to get older developers to understand that the vanilla way isn't always the best way.
Any experiences and thoughts would be greatly appreciated :)
Marco Alka
Software Engineer, Technical Consultant & Mentor
tough question :) I have strong opinion but I'm torn between assessing what is my emotional preference and what's a fact :D .... invite request !! :D
I think there need to be a intermediate point. It's interesting to have the point of view of new developers, with all the new stuff and a lot of enthusiasm to make thins faster and maintainable.
But the old developers have the view of years of experience and maybe not have a lot of knowledge about the new stuff, the interesting point it's to have the nice knowledge of the old developers and transmite to the new developers, and viceversa with the new stuff of the new developers and new technologies and techniques make the old upgrade their skills.
One way to make the new developers learn rapidly is by giving them adjusted challenges. If they tend to use a lot of jQuery, give them a task to solve which is easier without jQuery. They will probably use jQuery. Then tell them that they have to strip the jQuery in oder to save bytes. Give them enough time to come up with a solution. It should be a problem which can be solved easily with VanillaJS, ideally in fewer lines of code. My upcoming Hashnode Original article contains at least one example. The trick with this way is that they realize themselves that a library or framework is not always the best solution. Also you might make them work on bugs instead of new code, which requires them to read lots of internal code. Just using a framework, they might not be able to solve the bugs, so they will have to go deeper.
As for old developers, I do not have any experience, but I would demonstrate the technology to them with examples of tech they already use and love. Show them shortcomings and how new tech can help them. Old developers usually try to only use what is of benefit to them and don't care about hype, so you have to show them that the new tech really is useful and in what kind of situations it is. Try to have them come up with their own problem cases and try to find a solution with the new tech!