• 熟悉 JavaSE 对集合、多线程等有深入理解,并且熟悉数据结构以及设计模式与设计原则。
• 熟悉 Spring、SpringMVC、Mybatis、MybatisPlus 等核心框架,可以根据需求快速搭建项目。
• SQL 熟练使用 MySql,了解 MySql 的索引、事务、锁、存储过程等,并参与过项目中的 SQL 优化工作; NoSQL 掌握 Redis、Neo4j、ElasticSearch、MongoDB 基本使用。
• 具备 Springboot+ SpringCloud/Alibaba 微服务开发经验,熟悉微服务之间的拆分、搭建等。
• 熟悉常见消息队列(RabbitMQ,Kafka),平台任务调度 xxl-job 等中间件。
• 熟悉 JVM 对类加载机制、GC 算法、双亲委派机制等有深入理解,熟练使用 VisualVM 分析项目性能并且参与 过线上项目的调优工作。
• 熟悉并发工具包,对 Java 中的锁有深入理解,并在项目中熟练使用。
• MacOS、Windows 双系统使用者,熟练使用 yum、brew、Git、Jenkins、Docker、Maven、Gradle、Skywalking、 Logstash 等
• 熟练使用 Postman、Apifox、Swagger、Apache AB、Jmeter 等测试工具、内存快照分析工具 Jprofiler 等
• 熟悉 Javascript,掌握 Jquery、Vue 等主流框架、掌握 Axios、Arco Design Vue 等组件库。
• 负责轨迹微服务具体业务流程的分析比如如何创建轨迹,完成路线规划、如何通过运单号查询轨迹以及司机如 何上报位置,并且解决了项目中的多个难点,如:根据运输订单号和轨迹数据实体使用高德查找对应路线规划、 多层 JSON 数据的解析问题等。
• 参与短信微服务的设计与开发,实现使用工厂模式选择短信服务商,以提高拓展性,使用 Rabbitmq、Feign 和 XXLjob,以实现服务的远程调用灵活性,并且为确保幂等性,该微服务使用 redis 进行幂等性处理。同时,该微 服务 还支持将短信记录保存至数据库,以支持历史追溯。
• 负责搜索微服务的设计与开发,主要提供搜索与数据同步服务,主要功能比如根据运输单查询司机运输任务 、 使用 rabbitmq 完成司机运输任务数据的同步并且解决了此微服务的难点比如使用通配符*{}*进行模糊查询。