This is a question posted on Quora, asking: "As a software engineer, what skills must be mastered to survive in the next 5-10 years?" Like artificial intelligence? Advanced Math? ”
Here's a Pedram Keyani, a programmer who has worked on Facebook and Google, who is currently working with Uber, and has now received 3500+ 's praise:
If your goal is to become a general software engineer, the skills you need to master over the next 5-10 years are not much different from the last 5-10 years.
General Skills:
A deep understanding of the fundamentals of computer science
Database
Network Technology
Compiler
Data
Algorithm
Operating system Design
Analytical capabilities
The ability to break down big problems into small problems
Order and priority of the work to be done
Collaboration with the team (meaningful work is done on a team)
Professional skills:
If you want to adapt to industry trends or think that the real world requires computer technology, you can focus on machine learning, computer vision, mobile development, or distributed systems (the Internet of Things).
I have a little warning about machine learning. Most people think this is a hot field (it really is), but the actual application of machine learning needs to rely on a powerful operating system design, that is, the efficient use of memory, IO, and does not reside in the machine classification of the extraction function. Most research courses are focused on the underlying classification, but the real wonder is how to apply them to real-world problems.
This article was selected from "developer Headlines" January 14 most popular article Top 3, thanks to the author WEB Resource Network sharing
As a software engineer, the technology that should be mastered within the next 5-10 years