Since computer technology evolves so rapidly, does it matter if you have 5 or 15 years of experience as e.g. software developer? originally appeared on Quora - the place to gain and share knowledge, empowering people to learn from others and better understand the world.
Computer technology and programming languages are different things.
New programming languages, frameworks, libraries pop up all the time. That’s fine and the market is broad - some of them pick up and become popular while most can’t get traction.
Computer technology, on the other hand, doesn’t evolve as rapidly. Desktop computers have been around for decades. Laptops work in the very same way - except for the portability aspect which basically ports existing hardware to mobile formats (adhering to the same architectural standards).
So a programmer building software 20 years ago was solving the same problems (more or less) as an engineer does in 2017. Some programming languages and libraries (or frameworks) make that easier by providing the toolkit automating some of those paradigms.
But the foundations are the same.
Web development is one of the most popular branches of software engineering providing job opportunities. Web developers build software that runs on a web server and is controlled via the browser.
- A popular web server is Apache released in 1995 along with Internet Explorer launched at the same time.
- An Apache alternative is nginx (launched in 2004) a bit after Firefox (2002) and before Chrome (2008).
Web developers in 2017 still build software that runs on the same technology that was around 22 years ago. Evolution hasn’t progressed fast enough to make browsers and web servers obsolete (replacing them with something completely different).
Even if we account for different stacks such as Node.js which can run independently (although commonly paired with nginx), the programming paradigms are still similar to traditional software development. An experienced developer will become productive 10x faster than a beginner in programming that’s just starting out.
Software engineering is about solving business problems through technology. New programming languages or frameworks introduce some learning curve which is negligible for an experienced programmer.
The actual art of programming revolves around understanding computer architectures and operating systems, writing algorithms managing different data structures, optimizing for performance and stability. As long as you’ve spent enough time building production code, in at least a couple different programming languages, switching to a new one isn’t that much of a challenge.
This question originally appeared on Quora - the place to gain and share knowledge, empowering people to learn from others and better understand the world. You can follow Quora on Twitter, Facebook, and Google+. More questions:
- Programming Languages: How do programming languages work together and are some not compatible with others?
- Software Engineers: As a new software engineer, why should I stay at a company for longer than one to two years?
- Career Advice: Is our boring future going to be moving from software development to tools configuration in big companies with big projects?