专家级程序员技术栈

必选

  1. 精通C++,了解其他编程语言如Java、Python、Go、Rust、C等
  2. 了解计算机硬件和Linux操作系统
  3. 理解计算机网络(TCP/IP/Https协议、路由、交换等)
  4. 掌握常见AI模型
  5. 精通并行和并发编程
  6. 精通至少一种大数据处理框架(如Hadoop、Kafka)
  7. 精通至少一种分布式数据库(如Hbase)
  8. 深入理解至少一种软件架构(如淘宝)
  9. 精通UML进行软件设计
  10. 深入理解6大设计原则及23种设计模式
  11. 了解编译原理
  12. 深入理解重构思想
  13. 了解现代软件工程技术(Container、Docker、Devops等)
  14. 精通算法和数据结构(leetcode练习题500+)
  15. 了解开源

可选

  1. html、html5、js前端和Ngix、php等后端技术及SpringBoot等框架
  2. 了解常见网络攻击手段及防御策略
  3. Android及IOS开发
  4. 熟练掌握Socket编程

你可能感兴趣的:(软件工程与技术)