3 ms·
There are fundamental engineering skills that don't change very quickly, and then there's technology stacks. Having a good set of skills in the former category
by itamarst 10y ago
There are fundamental engineering skills that don't change very quickly, and then there's technology stacks. Having a good set of skills in the former category is critical to being a good engineer.
As far as technology stacks go:
* Some domains change faster than others. E.g. front end web dev has rapid change, with new JavaScript frameworks coming out every 6 months. Back end web dev is much more stable.
* Even when change happens, it mostly affects new projects. For example, while C++14 may be fundamentally different, most C++ projects were started years ago. Project I worked on back in 2004-2005 was started in 2000 and is still going strong. So while it's modernized somewhat as the language and compilers and libraries changed, I'm sure it's not at bleeding edge in terms of features.
Thus there are many many places you can work that aren't using the newest/trendiest technology.
Practical advice that results from this:
1. Focusing on fundamental skills that transcend particular technology is more useful than specific technical skills in the long run. (E.g. learning big picture thinking: https://codewithoutrules.com/2016/08/25/the-01x-programmer/ https://codewithoutrules.com/2016/08/25/the-01x-programmer/).
2. It's good to change projects or companies every once in a while, existing projects are always on older technologies and you get out of touch with latest tech.
3. It's good to keep an eye out on new technologies so you know they exist and can use them when necessary. Doesn't require being an expert or even learning how to use them, just being aware they exist and what they're good for. Since many new technologies are gone after a year this also means you don't overinvest in something - you only pick it up if it's actually useful for the job at hand. (More at https://codewithoutrules.com/2016/10/07/growing-your-toolbox/ https://codewithoutrules.com/2016/10/07/growing-your-toolbox...).