zoukankan      html  css  js  c++  java
  • 4-6年经验左右、优秀的 Java 程序员应该具备的技能

    4-6年经验左右、优秀的 Java 程序员应该具备的技能有哪些,按“专业技能”和“项目”两块,包括但不限于以下内容

    专业节能方面

    • 基础:JDK 常用类的原理、源码、使用场景。
    • 设计模式:常用几种的原理、使用场景,单例、动态代理、模板、责任链等。
    • 数据结构:数组、链表、栈、队列、树。
    • 网络:TCP、HTTP、HTTPS、负载均衡算法。
    • 框架:Spring IoC 原理、Spring AOP 原理和使用、Spring 常用的扩展点、MyBatis 的核心流程。
    • 中间件:常用中间件的核心原理与最佳实践,并对其中的 1 到 2 个有深入的学习,Redis、Kafka(RocketMQ、RabbitMQ)、Dubbo、Zookeeper。
    • 数据库(MySQL):索引原理、隔离级别、锁机制、分库分表、慢 SQL 定位及优化、线上问题解决。
    • Netty:NIO 原理、核心组件、I/O 多路复用(epoll)、零拷贝。
    • JVM:运行时数据区、垃圾回收算法、垃圾回收器(CMS、G1)、常用配置参数、线上问题定位及解决。
    • 稳定性保障:隔离、限流、熔断、降级等。
    • Linux:基本命令的使用、快速定位和排查问题。
    • 分布式理论:CAP、BASE、2PC、3PC、TCC。

    项目方面

    • 能独立完成一个复杂模块的需求分析、方案设计和最终落地实现。
    • 能不断思考,寻找更优的设计和解决方案,积极优化慢 SQL、慢服务。
    • 具备排查问题的能力,遇到线上问题能及时定位和修复上线,例如:数据库死锁、服务器宕机、服务器 Full GC 频繁等。
    • 具备难题攻关的能力,能不断解决项目遇到的挑战,能给予初级工程师技术上的指导。
    • 初步具备带领团队(1-3人左右)的能力,能合理分配需求,做好进度把控、风险评估、Code Review。
  • 相关阅读:
    MongoDB 3.0 添加用户
    MongoDB基本命令用
    http://www.bootcss.com/
    UML之用例图
    .net 下分布式缓存(Memcached)实现
    Android系列 -- 2、视图组件View
    Android系列 -- 1、 初识android
    TP50、TP90、TP99、TP999详解
    Linux下SSD缓存加速之bcache使用
    数据中心常见电源线详细介绍
  • 原文地址:https://www.cnblogs.com/sfbrzkh/p/13610874.html
Copyright © 2011-2022 走看看