ID:320285

EN 有团队

高级Java工程师

  • 公司信息:
  • 阿里巴巴
  • 工作经验:
  • 8年
  • 兼职日薪:
  • 600元/8小时
  • 兼职时间:
  • 下班后
  • 周六
  • 周日
  • 可工作日远程
  • 可工作日驻场(离职原因)
  • 可工作日驻场(自由职业原因)
  • 所在区域:
  • 北京
  • 海淀

技术能力

Java基础: 熟悉Java基础知识,如: 集合 、IO 、反射等相关知识, 熟悉基本数据结构与算法和常见的设计模式,如工厂模式、代理模式、单例模式等;
JUC: 熟练使用Java中的并发容器,如ConcurrentHashMap、CopyOnWriteArrayList等,理解Java并发编程中锁升级 、线程池机制 、volatile 、AQS 、CAS、ThreadLocal等;
JVM: 了解JVM原理,如类加载机制 、内存结构 、垃圾回收机制 、对象创建过程等,掌握一定JVM调优能力;
MySOL: 熟悉MySOL的使用 ,理解MySOL索引 、事务 、存储引擎 、锁机制等原理 ,有一定的SOL调优验,了解数据库的读写分离 、分库分表等;
Redis: 熟悉Redis 数据结构及使用场景 ,理解持久化、内存回收策略、分布式锁等特性,能够解决高并发场景下的缓存穿透、雪崩、击穿问题;
框架: 熟悉SpringBoot 、SpringMVC 、MyBatis 、MyBatis-Plus等主流开发框架 ,理解Spring I0C 、AOP 、循环依赖、 SpringMVC的执行流程以及SpringBoot自动装配原理;
微服务: 熟悉常用微服务SpringCloud Alibaba技术体系, 如Nacos 、Seata 、GateWay 、OpenFeign等 ;
消息队列: 熟练使用RabbitMO、Kafka消息中间件, 熟悉基本使用场景, 如异步解耦, 消息确认机制等;
工具: 熟练使用Git 、Maven等项目管理及构建工具,熟悉常用的Linux命令和Docker基本操作;

项目经验

技术分享社区项目
技术栈: SpringBoot 、MyBatis-Plus 、MySQL 、Redis 、ElasticSearch 、RabbitMQ 、Docker
项目目描述:技术分享社区是一个前后端分离的社区项目 ,包括前端 PC 和管理后台 ,用于帮助开发者成长的社区,面向技术开发人员的内容分享平台。
责任描述:作为核心研发人员,主要负责登录认证 、消息通知以及管理后台的开发工作。
核心技术:
通过验证码和前端保持半长链接映射关系, 当用户扫码关注公众号并输入验证码后 ,发起回调, 识别用户信息并找到对应半长链接,实现系统自动登录;
将用户评论 、点赞 、收藏 、系统消息发送到 RabbitMQ,实现消息异步解耦,提升系统效率和服务稳定性;
采用 HandlerExceptionResolver 的全局异常处理策略,提高了代码的健壮性和可维护性 ,优化了用户体验;
基于ThreadLocal 在登录校验拦截器中封装线程隔离的全局上下文,减少用户信息的数据库查询次数;
通过 AOP+TraceID 记录接口访问日志,实现任务的追踪 、监控和诊断;
通过 Redis 实现计数统计和用户活跃度排行,采用先写 MySQL再删 Redis 的方案保证高并发场景下的缓存一 致性;
采用自旋锁策略优化缓存架构 ,针对热key的并发访问进行同步,防止其失效时导致的缓存击穿;
集成本地缓存Guava和Caffeine ,有效提高服务吞吐率 、QPS近30%;
通过集成xxl-job实现了定时任务的管理和执⾏,如⾃动清理过期⽂章缓存 、社区数据统计等;
为了满足社区在高并发场景下业务ID的唯一性和可追溯性,实现了一套基于雪花算法(Snowflake)的ID生成方案,进一步降低了ID生成的延迟;
通过 Canal 框架实现了MySQL与ElasticSearch的数据同步,确保了实时搜索的准确性和高效性;
通过Liquibase实现数据库表的自动创建和初始化,以及版本管理,并且兼容MySQL和其他不支持Liquibase的数据;
通过 Nginx 代理 ,将客户端请求转发到⽬标服务器的后端 API 接⼝ ,从⽽解决跨域问题;

智慧书屋 2023.02-2023.05
技术栈: SpringBoot 、SpringClund 、MyBatis-Plus 、MySQL 、Redis 、ElasticSearch 、RabbitMQ 、Docker
项目描述:采⽤分布式微服务架构搭建的书籍售卖平台,使⽤缓存和消息队列等技术实现了⼀ 个⽀持高并发的电商系统。
核心技术:
使⽤Nacos实现整个分布式平台的服务注册和配置功能;
使⽤GateWay搭建⽹关服务,实现前后台请求的路由转发 ,使⽤OpenFeign实现各服务的远程调⽤功能;
使⽤SpringSession+Redis⽅案 ,解决分布式环境下session共享问题,并基于Redis实现短信验证码登录;
采用先更新数据库再删缓存的失效模式+设置缓存过期时间解决Redis与Mysql数据库的⼀致性问题;
使⽤Redission分布式锁解决缓存数据的缓存击穿问题 ,优化了传统分布式互斥锁的实现⽅式;
基于Redis+Lua脚本和令牌Token机制,解决订单创建时的接口幂等性问题;
使⽤RabbitMQ延迟队列实现订单未⽀付⾃动取消和⾃动解锁库存的业务逻辑达到分布式事务的最终⼀致性;
使⽤发布确认机制 、消费者⼿动应答以及消息定时重发实现可靠消息投递;
使⽤线程池与异步编排优化查询图书详细信息接⼝下的业务逻辑;
使⽤Nginx存储前台页面静态资源,降低后台服务器网络数据传输压力。

团队情况

  • 整包服务: 微信公众号开发   微信小程序开发   PC网站开发   H5网站开发   App开发   WebApp开发   运维类开发   DBA开发   其他开发   
角色 职位
负责人 高级Java工程师
队员 产品经理
队员 UI设计师
队员 iOS工程师
队员 安卓工程师
队员 前端工程师
队员 后端工程师

案例展示

  • 技术派

    技术派

    这是一个基于 Spring Boot、MyBatis-Plus、MySQL、Redis、ElasticSearch、MongoDB、Docker、RabbitMQ 等技术栈实现的社区系统,采用主流的互联网技术架构、全新的UI设计、支持一键源码部署,拥有完整的文章&教程发布

  • 博客系统

    博客系统

    该博客是基于SSM实现的个人博客系统,适合初学SSM和个人博客制作的同学学习。 最新版本支持用户注册,包含用户和管理员两个角色 。 主要涉及技术包括的包括 Maven、Spring、SpringMVC、MyBatis、JSP、MySQL等。

  • 技术派

    技术派

    这是一个基于 Spring Boot、MyBatis-Plus、MySQL、Redis、ElasticSearch、MongoDB、Docker、RabbitMQ 等技术栈实现的社区系统,采用主流的互联网技术架构、全新的UI设计、支持一键源码部署,拥有完整的文章&教程发布

查看案例列表(含更多 0 个案例)

信用行为

  • 接单
    0
  • 评价
    0
  • 收藏
    0
微信扫码,建群沟通

发布任务

企业点击发布任务,工程师会在任务下报名,招聘专员也会在1小时内与您联系,1小时内精准确定人才

微信接收人才推送

关注猿急送微信平台,接收实时人才推送

接收人才推送
联系需求方端客服
联系需求方端客服