职位描述
资深 Java 软件开发工程师
职位概述:
我们正在寻找一位经验丰富的资深 Java 软件开发工程师,负责设计、开发和维护高性能、高可用和可扩展的后端服务及系统。您将参与整个软件开发生命周期,与产品经理、架构师和QA团队紧密合作,推动技术创新并解决复杂的技术挑战。
核心职责:
1. 系统设计与开发:
o 独立负责核心业务模块的设计、开发、测试和部署。
o 参与系统架构设计和技术选型,确保系统具备良好的扩展性、稳定性和性能。
o 编写高质量、可维护的代码,并进行代码审查,指导初中级工程师。
2. 性能优化与问题排查:
o 对现有系统进行性能调优、代码优化和重构,提升系统效率和响应速度。
o 诊断和解决复杂的技术问题,包括线上故障排查、内存泄漏、并发问题等。
3. 技术研究与创新:
o 持续关注行业前沿技术,进行技术预研和评估,引入新技术以优化开发流程和提升产品竞争力。
o 分享技术经验,组织技术交流,推动团队技术水平的提升。
4. 团队协作与指导:
o 与产品、测试、运维等团队紧密合作,确保项目按时高质量交付。
o 为初中级工程师提供技术指导和帮助,促进团队成员的成长。
任职要求:
1. 扎实的 Java 基础 (3年以上相关开发经验):
o 精通 Java 编程语言,对 JVM 原理(内存模型、垃圾回收、类加载机制等)有深入理解。
o 熟悉多线程、并发编程,掌握线程池、锁机制等技术。
o 深入理解面向对象设计原则(SOLID)、设计模式,并能在实际开发中灵活应用。
2. 丰富的框架经验:
o 精通 Spring 全家桶,包括 Spring Boot、Spring Cloud、Spring MVC、Spring Data JPA/MyBatis 等。
o 熟悉微服务架构理念,具备微服务开发和治理经验(服务发现、配置中心、网关、熔断、限流等)。
3. 数据库与缓存:
o 精通关系型数据库(如 MySQL、PostgreSQL)的设计、优化和SQL编写,具备高性能SQL调优经验。
o 熟悉 NoSQL 数据库(如 Redis、MongoDB)的原理及应用场景,有实际使用经验。
o 熟悉主流缓存技术(如 Redis、Memcached),了解其内部机制及分布式缓存解决方案。
4. 消息队列:
o 熟悉至少一种主流消息队列(如 Kafka、RabbitMQ、RocketMQ)的原理、应用场景和高可用方案。
o 具备消息队列在分布式系统中的应用经验(削峰、解耦、异步通信)。
5. 分布式系统经验:
o 具备分布式系统设计和开发经验,理解分布式事务、分布式锁、最终一致性等概念。
o 熟悉 RPC 框架(如 Dubbo、gRPC)或 RESTful API 的设计和实现。
6. 工具与实践:
o 熟悉 Git 版本控制工具。
o 熟悉 Maven/Gradle 等构建工具。
o 熟悉 Docker、Kubernetes 等容器化技术及相关部署实践。
o 了解 CI/CD 流程和工具(如 Jenkins)。
o 熟练使用 AI 相关工具和具AI 整合集成。
7. 操作系统与网络:
o 熟悉 Linux 操作系统,具备基本的shell脚本编写能力。
o 深入理解 TCP/IP 协议栈、HTTP 协议等网络基础知识。
8. 软技能:
o 优秀的沟通能力和团队协作精神。
o 具备较强的分析问题和解决问题的能力。
o 对新技术保持热情,具备持续学习和自我驱动的能力。
o 具备项目管理或技术领导经验者优先。
加分项:
• 有高并发、大数据量系统开发经验。
• 有开源项目贡献者优先。
• 熟悉前端技术(如 React, Vue, Angular)或全栈开发经验。
有大数据处理(如 Hadoop, Spark)或流处理(如 Flink)经验。
• 熟悉云平台(如 AWS, Azure, GCP, 阿里云)的使用。
以担保或任何理由索取财物,扣押证照,均涉嫌违法,请提高警惕