@
murmur 12306 的问题,如果我是面试官,我希望被面试者,从底层开始一步一步地向上分析。
比如,你说了,不是靠技术,那么为什么不能靠技术?技术在哪个环节出现问题?具体是什么问题?该问题是如何产生的?
我希望面试者在探讨 12306 第一版的问题时:
1.能够结合其业务问题与现象,下降到模电层,在物理特性上说明当前计算机各类物理器件瓶颈与特性,猜测业务问题可能卡在了哪些物理特性与瓶颈上。
2.数电、逻辑层,我希望面试者探讨一下当今各种处理器的架构与优缺点,以及拿这些处理器来解决这些问题的优势与劣势。
3.根据最近几年虚拟化的发展,在组成的层次,探讨一下不同业务进行虚拟化的优劣,探讨不同业务为什么适合或不适合虚拟化,分析优劣与成本。
4.接着汇编与操作系统层。OS 层面上有各种调度模型、文件系统的特性、内存的管理方法,OS 与硬件的交互牵涉到超线程、虚拟化、各种指令集等对这个问题的应用与优化,然后牵涉出如果编译器没能利用好新设备,那么如何把这些新指令 hack 到汇编里实现加速等等。
5.到了 java 这个层次,针对业务,分析 jvm,参数如何调优,甚至直接改造 jvm 实现定制优化。
6.到了前端,分析浏览器的执行过程,来优化页面渲染与打开速度,减少内存占用。目前比较新的浏览器端编译技术,如何应用到这个问题里来,等等。相对于 CS 结构,BS 结构存在哪些问题,有什么办法能解决这些问题,代价如何。
7.根据最近几年的云计算,和面试者探讨一下全国范围的云架构,各种主流云产品特性与经济成本,以及各家云厂商近几年踩的坑与原因,以及 VMware 这些大厂是如何避坑的等等。
8.针对近几年等保要求,分析一下安全层面上的各个问题,如何过等保,甚至如何与各家黑心安全厂家保持良好关系。
以上是本科阶段的内容。如果对方是研究生,甚至博士,那么我会提供一些当初 IBM 给的方案以及具体的技术细节,让面试者根据这些资料,分析出 IBM 是如何解决这个问题的,以及要付出怎样的代价,然后探讨这些代价昂贵的原因,做一次成本分析,甚至根据这些细节大致推测一下 IBM 的财务管理问题等等。让面试者根据成本分析与方案优劣,来分析当时国内评审专家团为何没有采用 IBM 的方案的原因。
对于高层次的管理人才,还需要和他们探讨自建数据中心的整体架构、具体方案、关键难点解决方案、设备功能特性与选型、招投标环节、采购合同与维护合同以及牵涉到的相关法律问题,还有一些诸如冷热风道、多线接入方案与成本、强弱电施工等细节。
以上内容随便选一个点铺开讲,都可以讲上半天,正统科班学习为什么又繁琐又难,正是因为这些东西,打好基础非常麻烦,但这也正是 bat 高端人才收入高的原因。以上对于培训机构来说也是完全没办法摸到边际的内容。