As a senior technical engineer of Internet R & D, what kind of knowledge structure should be possessed to be truly competent? From the perspective of current Internet development work, tenfy summarized several points that I personally think are more important. Of course they are not necessarily comprehensive, but they must be mastered or mastered.
I. Technical aspects
1. Background Development Technology:
Linux/Unix development, C/C ++, shell script, memory management, network communication model, process/thread, TCP/IP protocol, GDB, network security related,
Server Load balancer technology and practices
2. Front-end development technology
Html/XHTML, XML, W3C, JavaScript, CSS, Ajax, cross-browser programming, site optimization, HTTP protocol, front-end cache, flash,
3. Architecture capability
Architecture design capability, business model abstraction capability, object-oriented design method, service-oriented design method, and interface-oriented implementation method
4. Operation and deployment
Successful Internet products are operated rather than developed. From this point, we can see that operation is the lifeline of Internet products, operational and reasonable operation costs are important considerations for the design and implementation of Internet products.
5. Cost Awareness and cost estimation
2. Communication Skills
This is very important.
Iii. Project Management
Agile Iteration
4. Business grasp and market sense
5. deep understanding of user experience