Java要求


1. Java工程师的一些要求

Java工程师的一些要求,搜集于网络,给Java工程师们一个学习的方向。

1.1. 要求实例一

  1. 掌握扎实的 Java 基础,熟悉集合类,I/O 及多线程/协程编程,理解各种容器类的内部实现
  2. 三年以上 Java 进行 Web,API 或中间件的全流程开发经验,熟悉 Spring,iBatis,缓存,连接池等常见基础框架的使用、原理和实现
  3. 熟悉常用设计模式,熟悉基本 JVM 原理、参数及问题排查,掌握 JVM 性能调优的常见方法及故障排查方法
  4. 熟练掌握 SQL 和 MySQL,对 SQL 优化有一定经验,掌握事务的基本原理及实现
  5. 熟练掌握 Linux 下常用的 shell 命令,掌握 Linux 基础性能指标及线上问题排查与解决方法
  6. 对分布式系统及分布式存储理论,如 CAP,一致性哈希,MVCC 等原理及算法有一定了解
  7. 熟悉日常开发流程,熟悉常用开发、调试工具、代码管理工具,如 Git、Maven、Eclipse 等
  8. 思路清晰,良好的沟通能力与技术学习能力
  9. 有线上大规模分布式系统开发、部署或运维经验者优先
  10. 有 Python、Perl 等其它脚本语言开发经验者优先

1.2. 要求实例二

  • JAVA基础扎实,理解io、多线程、集合等基础框架,对JVM原理有一定的了解
  • 3年及以上使用JAVA Web开发的经验,对Spring,ibatis,struts等开源框架熟悉
  • 熟悉分布式系统的设计和应用,熟悉分布式、缓存、消息等机制
  • 有全栈开发经验的优先考虑
  • 熟悉互联网共享经济业务,具有电商CRM系统设计开发相关经验者优先考虑
  • 有大型分布式、高并发、高负载、高可用性系统设计开发维护经验优先考虑
  • 有GrowthHacking的数据驱动产品开发的思维,有相关实际经验的优先考虑
  • 具有一定的项目规划和决策能力,善于捕捉业务需求、架构设计问题,并给出有效的解决措施和方法

1.3. 要求实例三

  1. 5年以上工作经验。
  2. 具备扎实的计算机专业基本功,深厚的Java的编程基础,对Java内存模型、多线程、垃圾回收、NIO等有一定研究。
  3. 熟练掌握主流的开源框架设计理念,对Spring、Mybatis等有深入的了解、研究过源代码者优先。
  4. 熟练掌握基于Oracle或者Mysql的设计和开发,对tair,redis有经验者优先。
  5. 熟悉Java 及面向对象设计开发,对部分 Java 技术有深入研究,研究过优秀开源软件的源码并有心得者优先。
  6. 了解基础服务组件相关开发,对jbpm、activiti、solr、elasticsearch、rabbitmq、kafka有经验者优先。
  7. 对开源技术有浓厚兴趣,在技术社区活跃者优先。
  8. 有较强的逻辑分析、数据分析、问题排查能力。
  9. 有一定前端开发经验的优先,具有实际的html、jquery、jsp、freemarker等技术开发经验。