互联网企业月薪30K与15K的Java工程师有什么不同之处?

  1. 云栖社区>
  2. 博客>
  3. 正文

互联网企业月薪30K与15K的Java工程师有什么不同之处?

欧阳愠斐 2018-10-16 15:44:57 浏览1145
展开阅读全文

很多面试,很多人员能力要求都有“Java高级工程师的字眼”,如果您真心喜欢Java,并且您刚起步,那么我今天简单分享一个Java高级工程师所应该具备的特质,希望能给你带来帮助。

1、平静的心态

和所有程序员一样,要写一手好的程序,没有好的心态是不行的。

遇事不可急躁,不可轻言放弃。

在程序开发过程中,尤其是初中级程序员,写出的程序或架构会遇到很多问题,其中一些问题比较弱智,而有些问题根本没有碰到过,于是不可太过急躁,应该逐个排查问题的最初源泉,将其干掉。急躁的心态去开发系统是对项目的一种不负责。急躁会让人学会将就,让人学会逃避。而我个人北京两年的简单生活,给我其中一个最大的历练也就是:我的心态更加平静了。

相信,这样的心态也会有助于你其他方面的处事能力。

为什么将心态列入其中,我是想说明:它不同于销售的职能,需要很大激情澎湃,而是需要静静的思考。

2、一套烂熟于心的问题解决思路

曾经有位程序开发的同事在QQ签名中写到:每解决一个bug,就给自己一个提升。的确,没有真正解决过无数的bug或问题的程序员,谈不上专家,谈不上高级程序员。而一个高级程序员正是从这种解决问题的过程中不断地历练自己,形成一套烂熟于心的问题解决思路,让自己强大的。

我也简单说说Java程序员成长过程中经常遇到的一些问题,如果你一个也没遇到或很少遇到,那么您就是两个极端的人:要么初级入门,要么高级了,哈哈。

基础扎实,熟悉 Java 编程,熟悉 Spring、MyBatis 等框架优先;

熟悉 SQL 语句,熟练使用 MySQL 数据库;

良好的沟通、表达、协调能力,富有激情,学习能力强;

1、先自我介绍

2、什么是多态?哪里体现了多态的概念?

3、HashMap 源码分析,把里面的东西问了个遍?最后问是不是线程安全?引出 ConcurrentHashMap

4、ConcurrentHashMap 源码分析

5、类加载,双亲委托机制

6、Java内存模型(一开始说的不是他想要的,主要想问我堆和栈的细节)

7、垃圾回收算法

8、线程池,自己之前看过,所以说的比较多,最后面试官说了句:看你对线程池了解还是很深了

9、事务的四种特性

10、什么是死锁?

11、乐观锁和悲观锁的策略

12、高可用网站的设计(有什么技术实现)

13、低耦合高内聚

14、设计模式了解不?你用过哪几种,为什么用,单例模式帮我们做什么东西?有什么好处?

15、你参与什么项目中成长比较快?学到了什么东西,以前是没有学过的?

16、项目中遇到的最大困难是怎样的?是怎么解决的?

17、智力题(两根不均匀的香,点一头烧完要一个小时,怎么确定15分钟)

18、你有什么问题想要问我的?

19、问了菜鸟网络他们部门主要做什么?

20、登录从前端到后端整个过程描述一遍?越详细越好,说到密码加密,网络传输,后台验证用户名和密码,Cookie 设置等。具体问我密码加密是前台还是后台加密,说了在后台加密?面试官说,那你做这个项目有什么意思?密码传输都是明文的,默认 HTTP 传递是明文传输,当时被面试官带进前台加密还是后台加密的沟里去了,没想到用 HTTPS ,后来后来的路上查了些资料才知道的,面试过程中他很想我说前台加密,但是前台加密算法那代码就摆在那里,很容易就给破解了吧,也没给点提示说 HTTPS,我只好投降

21、写一个查询的 sql 语句

22、线程同步的方法?Synchronized、Volatile、(面试官好像觉得 Volatile 不可以做到同步,我和他说了半天的 Volatile 原理 ,他竟然不认同,我开始怀疑他的实力了)、ThreadLocal、Atomic。

说到这些了,我当时竟然没把他带进我我给他挖的坑里去(线程池,之前好好研究过呢,可惜了)

23、Spring IOC 和 AOP 的理解?叫我写 AOP 的代码,我没写

24、JDK 动态代理和 Cglib 代理区别?

25、你觉得项目里面你觉得哪些技术比较好?我指了两个,然后他也没有问下去。

26、解释下 XSS 攻击

27、Spring 和 SpringBoot 的区别?

28、JVM 垃圾回收算法?分代中为什么要分三层?

29、OOM 是什么?什么情况会发生?

30、你觉得你有啥优点?

如何系统学习,让你月入30K?

主要用到的技术栈

程序员学习交流群:878249276,获取往期Java高级架构资料、源码、笔记、视频

Dubbo、Redis、设计模式、Netty、zookeeper、Spring cloud、分布式、

高并发等架构技术,获取以上资料

面试大公司基本都会问的技术,也是大公司经常用到的一些技术

性能调优

性能优化如何理解

  • 性能基准
  • 什么是性能优化
  • 衡量标准

JVM调优

  • jvm虚拟机的内存解析
  • 垃圾收集器
  • 实战调优案例与解决方案
  • JVM运行时区

Java程序员性能优化

  • 优雅的创建对象
  • 注意对象的通用方法
  • 类的设计陷阱
  • 泛型需要注意的问题
  • java方法的那些坑
  • 程序设计的通用规则

Tomcat

  • 线程模型分析
  • 生产环境配置及调优
  • 运行机制及框架

Mysql

  • 探析BTree机制
  • 执行计划深入分析
  • Mysql索引优化详解
  • 慢查询分析与SQL优化

应用框架源码解读

  1. Spring IOC
  2. Spring Aop
  3. Spring MVC
  4. Spring5的新特性
  5. Mybatis

Spring IOC

  • SpringFrammework体系结构
  • 源码分析
  • BeanFactory源码分析
  • BeanDefiniton源码分析
  • Bean生命同期
  • 依赖实现

Spring Aop

  • Aop源码分析
  • transaction事物分析
  • Springcache框架源码分析

Spring MVC

  • MCV简介与设计思想
  • SpringMVC组成
  • 源码解读DispatchServlet

Spring5新特性

  • 容器增加
  • 函数式编程
  • webFlux模块介绍
  • kotlin介绍
  • Testing改进
  • 兼容性问题

Mybatis

  • mybatis组成
  • 核心源码分析
  • 手写Mybatis

分布式架构

互联网分布式架构是非常重要的一个技术,基本上所有的大公司都会用分布式

分布式架构思维

  • 大型互联网架构演进过程
  • 架构师应具备的分布式知识
  • 主流分布式架构设计详解

架构开发基础

  • 多线程开发
  • 高性能NIO框架

架构核心服务层技术

  • 服务的前世今生
  • 深入理解通讯协议
  • 基于 分布式RPC解决方案
  • dubbo全解析

架构关键基础设施

  • 分布式环境指挥官zookeeper
  • 分布式消息通讯异步与MQ
  • 分布式缓存
  • 数据存储SQL&NoSQL
  • 高并发分流技术Nginx

分布式解决方案

  • 分布式解决方案
  • Session跨域共享实战
  • 分布式事物解决方案实战
  • 分布式锁解决方案实战
  • 分布式单点登录实战SSO
  • 分布式调度任务系统
  • 分布式配置中心

微服务架构技术

微服务这块应该不用多说了,知道微服务技术的至少能多加5k薪资

  1. SpringBoot
  2. SpringCloud
  3. Docker虚拟化技术

SpringBoot

  • 与微服务的区别于联系
  • 快速构建SpringBoot工程
  • SpringBoot核心组件剖析
  • 快速集成mybatis实战
  • 快速集成Dubbo及案例实战
  • 构建集成 redis及案例实战
  • 构建Swagger插件实现API
  • 管理及接口测试体系

SpringCloud

  • Zuul路由网关详解源码探析
  • Ribbon客户端负载均衡原理
  • Feign声明式服务调用方式
  • Eureka注册中心构件
  • Config配置服务中心
  • svn、git快速集成
  • Sleuth调用链路跟踪
  • BUS消息总线技术

Docker虚拟化技术

  • 介绍、安装与使用
  • compose部署脚本
  • service服务编排
  • redis分布式集群部署
  • docker file构建
  • 通过maven插件打包镜像
  • 部署及运行应用程序kubernetes编配
  • 构建Mysql集群实战
  • 高可用SpringCloud微服务与docker集成实现动态扩容实战

团队协作开发

这个是常用的开发工具类的,提升团队效率

  1. Git
  2. Maven
  3. Jenkins
  4. Sonar

程序员学习交流群:878249276,获取往期Java高级架构资料、源码、笔记、视频

Dubbo、Redis、设计模式、Netty、zookeeper、Spring cloud、分布式、

高并发等架构技术,获取以上资料,合理利用自己每一分每一秒的时间来学习提
升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!

架构师视频资料

网友评论

登录后评论
0/500
评论
欧阳愠斐
+ 关注