-
顶点软件
-
后端开发工程师
-
4年
擅长技能
## 核心职责
1. **软件设计与开发:**
* 参与需求分析、系统设计(模块划分、接口设计、数据库设计等)。
* 使用Java及相关技术栈(如Spring Boot, Spring MVC, Spring Cloud等)**设计、编码、测试、调试和部署**高质量的、可维护的、可扩展的应用程序模块或功能。
* 遵循**编码规范**和**最佳实践**(如设计模式、SOLID原则等)进行开发。
* 理解并应用面向对象编程(OOP)和函数式编程(FP)思想。
2. **后端服务开发:**
* 开发和维护**RESTful API**或**GraphQL**接口,供前端或其他服务调用。
* 实现业务逻辑、数据处理、算法和核心服务功能。
* 处理并发、性能优化、安全防护等后端核心问题。
3. **数据库交互:**
* 设计、优化和管理**关系型数据库**(如MySQL, PostgreSQL, Oracle)和/或**非关系型数据库**(如MongoDB, Redis, Elasticsearch)。
* 熟练使用**JDBC**、**JPA**(如Hibernate)、**MyBatis**等持久层框架进行高效的数据存取操作。
* 编写高效的SQL查询语句,理解索引、事务、锁机制等数据库原理。
4. **代码质量与测试:**
* 编写**单元测试**(如JUnit, TestNG)和**集成测试**,确保代码质量和功能正确性。
* 参与**代码审查**,对团队成员的代码提供建设性反馈,并吸收他人的建议。
* 使用**静态代码分析工具**(如SonarQube)提升代码质量。
* 理解和实践**TDD**(测试驱动开发)或**BDD**(行为驱动开发)理念。
5. **系统维护与优化:**
* 分析并解决线上系统的**Bug**和**性能瓶颈**。
* 对现有系统进行**重构**和**优化**,提升系统的稳定性、可扩展性和性能。
* 参与系统**监控**、**日志分析**(如ELK Stack, Splunk)和**告警**设置。
6. **技术研究与学习:**
* 持续关注并学习**Java生态**和**行业技术发展趋势**(如新版本Java特性、微服务、云原生、容器化等)。
* 评估并引入合适的新技术、新框架或新工具,提升团队开发效率和产品质量。
7. **团队协作与沟通:**
* 与**产品经理**、**前端工程师**、**测试工程师**、**运维工程师**等紧密协作,确保项目顺利推进和交付。
* 清晰表达技术方案和实现细节,编写必要的**技术文档**(如设计文档、API文档、部署文档)。
* 参与**技术讨论**和**决策**,分享知识和经验。