1. Java工程师的一些要求
Java工程师的一些要求,搜集于网络,给Java工程师们一个学习的方向。
1.1. 要求实例一
- 掌握扎实的 Java 基础,熟悉集合类,I/O 及多线程/协程编程,理解各种容器类的内部实现
- 三年以上 Java 进行 Web,API 或中间件的全流程开发经验,熟悉 Spring,iBatis,缓存,连接池等常见基础框架的使用、原理和实现
- 熟悉常用设计模式,熟悉基本 JVM 原理、参数及问题排查,掌握 JVM 性能调优的常见方法及故障排查方法
- 熟练掌握 SQL 和 MySQL,对 SQL 优化有一定经验,掌握事务的基本原理及实现
- 熟练掌握 Linux 下常用的 shell 命令,掌握 Linux 基础性能指标及线上问题排查与解决方法
- 对分布式系统及分布式存储理论,如 CAP,一致性哈希,MVCC 等原理及算法有一定了解
- 熟悉日常开发流程,熟悉常用开发、调试工具、代码管理工具,如 Git、Maven、Eclipse 等
- 思路清晰,良好的沟通能力与技术学习能力
- 有线上大规模分布式系统开发、部署或运维经验者优先
- 有 Python、Perl 等其它脚本语言开发经验者优先
1.2. 要求实例二
- JAVA基础扎实,理解io、多线程、集合等基础框架,对JVM原理有一定的了解
- 3年及以上使用JAVA Web开发的经验,对Spring,ibatis,struts等开源框架熟悉
- 熟悉分布式系统的设计和应用,熟悉分布式、缓存、消息等机制
- 有全栈开发经验的优先考虑
- 熟悉互联网共享经济业务,具有电商CRM系统设计开发相关经验者优先考虑
- 有大型分布式、高并发、高负载、高可用性系统设计开发维护经验优先考虑
- 有GrowthHacking的数据驱动产品开发的思维,有相关实际经验的优先考虑
- 具有一定的项目规划和决策能力,善于捕捉业务需求、架构设计问题,并给出有效的解决措施和方法
1.3. 要求实例三
- 5年以上工作经验。
- 具备扎实的计算机专业基本功,深厚的Java的编程基础,对Java内存模型、多线程、垃圾回收、NIO等有一定研究。
- 熟练掌握主流的开源框架设计理念,对Spring、Mybatis等有深入的了解、研究过源代码者优先。
- 熟练掌握基于Oracle或者Mysql的设计和开发,对tair,redis有经验者优先。
- 熟悉Java 及面向对象设计开发,对部分 Java 技术有深入研究,研究过优秀开源软件的源码并有心得者优先。
- 了解基础服务组件相关开发,对jbpm、activiti、solr、elasticsearch、rabbitmq、kafka有经验者优先。
- 对开源技术有浓厚兴趣,在技术社区活跃者优先。
- 有较强的逻辑分析、数据分析、问题排查能力。
- 有一定前端开发经验的优先,具有实际的html、jquery、jsp、freemarker等技术开发经验。