必知必会 - 迈向卓越

简介:        企业是如何选拨高素质工程师(高级软件工程师or架构师)的?除了脑筋急转弯那种简单的开场白外,还需要更专业,更深邃的交流。这里,我把自己平时的思考备案分享给大家,欢迎讨论~ 基础技术篇(数据结构,并发编程,JVM内存调优等) 1. 谈谈对队列offer,poll,peek操作的理解(实现,算法复杂度) 2. 谈谈对HashMap,ConcurrentHashMap,Con

       企业是如何选拨高素质工程师(高级软件工程师or架构师)的?除了脑筋急转弯那种简单的开场白外,还需要更专业,更深邃的交流。这里,我把自己平时的思考备案分享给大家,欢迎讨论~

基础技术篇(数据结构,并发编程,JVM内存调优等)

1. 谈谈对队列offer,poll,peek操作的理解(实现,算法复杂度)

2. 谈谈对HashMap,ConcurrentHashMap,ConcurrentLinkedQueue,AbstractQueuedSynchronizer的理解(实现,核心操作,算法复杂度,使用场景)

3. 谈谈对字符集的理解
4. 谈谈对NIO编程模型的理解

5. 谈谈TCP网络编程可能会遇到的问题
6. 谈谈对序列化的理解
7. 谈谈对softReference,weakReference,PhantomReference的理解
8. 谈谈对异常的理解
9.谈谈对设计模式的理解
10.谈谈对类加载器原理的理解,child first/parent first模型优缺点如何?
11.谈谈对ASM的理解
12.谈谈JVM调优经验

13. Maven的phase,goal有什么区别?lifecycle呢?Git是如何pull request的


全局统筹篇(技术深度,广度,前沿技术敏感度,工作习惯,架构观)
1. 工作中,除了对J2SE libarary的使用外,你还会用到哪些工具库?(脚手架问题,用好了极大提升效率,也可考察出其知识面)选择这些库的标准是?举几个简单例子吧
2. 精度丢失的问题,遇到过吗?(float,double,BigDecimal) 如何避免?
3. 序列化中需要注意什么问题?对时间的序列化,又需要考虑什么?
4. Apache,Ngix,Lighttpd怎么解决高并发访问的?采用什么模型?优缺点是?如何调优?poll,select,epoll模型在各个web server中的实现情况?
5. Memcached 是分布式缓存,还是集中式缓存?实施中需要注意什么问题?
6. 工作中,设计模式用的多吗?怎么用?visitor模式应用中需要注意些啥?
7. 谈谈你对架构的理解。工作中,你是如何去架构设计一些系统的?(可以从基础框架方面谈起,也可以谈谈是如何帮助团队成员做设计评审的)

8. 架构vs.设计?如果让你设计一个IOC容器,如何用优雅的架构保证你的设计?

9. 并发编程中需要注意些什么?哪种情况下线程可以Reentrant?如何优雅的结束线程?啪啦啪啦一堆堆问题

10. Reactor模式和Proactor模式了解多少,web server中有哪几种高性能IO模式?

11. 曾经参与过或者分析过哪些开源框架,带给你最大的感受是什么?

12  如果公司让你设计一套应用监控平台(Java平台),你觉得会碰到哪些技术难点(架构或细节层面均可谈谈。可以谈谈java agent技术)?

13. 谈谈你对consistent hashing algorithm的理解,如何设置虚拟节点,如何选择hash算法(更高的命中率,有效的故障转移)?
14. 归并排序,堆排序工作中有用到吗?如何应用的?

15. 谈谈你sql优化方面的经验?可以从执行计划谈起,对choose,rule.cost进行剖析


敏捷流程篇(团队建设,人才培育,基础建设)
1. 敏捷思想能为你工作中带来什么?怎么理解coding-pair的?
2. 人,而不是流程或方法决定了软件开发过程的成功,谈谈你的看法?
3. 用JIRA来跟踪管理我们的问题和需求;用Confluence来聚集团队的想法、计划和知识?在此过程中,你遇到了哪些问题;
4. 持续集成,版本控制方面,你是如何做的?

5. 你是如何推进项目执行的?

6. 招聘是一个请进来的过程,为了找到更靠谱的人才,你的做法是?请进来之后,又是如何帮助他们成长的?


参考文献:

1.http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html

2.http://www.openwebx.org/docs/autoconfig.html

3.http://mojo.codehaus.org/

目录
相关文章
|
关系型数据库 MySQL Android开发
0006Java安卓程序设计-ssm基于Android的校园二手商品交易平台1
0006Java安卓程序设计-ssm基于Android的校园二手商品交易平台
322 0
|
网络协议
DNS查询工具 - nslookup
【1月更文挑战第5天】
715 1
|
9月前
|
JSON API 数据格式
阿里巴巴商品详情接口(阿里巴巴 API 系列)
在电商开发中,获取阿里巴巴商品详情信息对数据分析、竞品研究等至关重要。通过调用其商品详情接口,开发者可获取标题、价格、图片、描述等数据,满足多种业务需求。接口采用HTTPS协议,支持GET/POST请求,返回JSON格式数据。示例代码展示了如何使用Python的requests库进行接口请求,需传递商品ID和访问令牌。实际应用时,请依据官方文档调整参数并确保安全性。
335 10
|
11月前
|
供应链 数据可视化 搜索推荐
电商管理:从传统到数字化的转变
在数字化时代,电商管理涵盖供应链、客户关系、数据管理和营销推广等多个关键领域。本文探讨了这些领域的策略及挑战,并介绍了板栗看板这一创新工具如何助力电商企业实现高效运营和可持续发展。
292 19
|
移动开发 前端开发 Android开发
开发指南059-App实现微信扫描登录
App是用uniapp开发的,打包为apk,上传到安卓平板中使用
|
SQL 搜索推荐 关系型数据库
MySQL 如何实现 ORDER BY 排序?
本文详细解析了MySQL中`ORDER BY`的实现原理及优化方法。通过解析与优化、执行及多种优化技术,如索引利用、内存排序、外部排序等,帮助你提升排序性能。了解其背后的机制,可显著优化查询效率。
718 4
|
物联网 智能硬件
物联网卡:当物联网设备用卡使用在非物联网设备上会被管控吗
当设备物联网卡被检测到在非物联网设备上使用时,可能会遇到一系列的反应或后果,这主要取决于运营商的政策和物联网卡的设计目的。物联网卡通常是为非物联网设备(如智能家居设备、智能城市基础设施、车联网设备等)设计的,其流量套餐、网络连接速度、服务协议以及费用结构都与普通SIM卡有所不同。以下是一些可能发生的情况:
|
Java API 开发者
代码小妙招:用Java轻松获取List交集数据
在Java中获取两个 `List`的交集可以通过 `retainAll`方法和Java 8引入的流操作来实现。使用 `retainAll`方法更为直接,但会修改原始 `List`的内容。而使用流则提供了不修改原始 `List`、更为灵活的处理方式。开发者可以根据具体的需求和场景,选择最适合的方法来实现。了解和掌握这些方法,能够帮助开发者在实际开发中更高效地处理集合相关的问题。
480 1
|
监控 安全 网络安全
蓝易云 - 服务器遭受攻击,CPU升高,流量升高,你一般如何处理
以上步骤可以帮助你处理服务器遭受攻击的情况,但具体的方法可能会根据你的网络环境和攻击类型有所不同。
244 2
|
存储 算法 大数据
算法设计与分析 实验三 回溯法求解地图填色问题(下)
算法设计与分析 实验三 回溯法求解地图填色问题
1137 0
算法设计与分析 实验三 回溯法求解地图填色问题(下)
下一篇
oss云网关配置