给你一次机会面试架构师你会问什么问题

给你一次机会面试架构师你会问什么问题

ID:42015248

大小:35.00 KB

页数:5页

时间:2019-09-06

给你一次机会面试架构师你会问什么问题_第1页
给你一次机会面试架构师你会问什么问题_第2页
给你一次机会面试架构师你会问什么问题_第3页
给你一次机会面试架构师你会问什么问题_第4页
给你一次机会面试架构师你会问什么问题_第5页
资源描述:

《给你一次机会面试架构师你会问什么问题》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、给你一次机会面试架构师你会问什么问题?2015-06-15田伟宇m当你决定关注「日志君」,你已然超越了99%的程序员曰志君导读:做技术就跟练武一样,在练武的不同阶段,分招式和心法。技术也一样,在不同的阶段,也分招式和心法。给你一次机会,你会如何考察架构师的武力值?作者:田伟宇,本文转自作者博客,点击原文阅读查看网页版文章。其实木文想说的是:当面试一个架构师的时候,我们应该问什么问题?我觉得,问什么样的问题,体现了teamleader更加看重架构师的哪些特点。我一直认为,做技术就跟练武一样,在练武的不同阶段,分招式和心法。技术也一

2、样,在不同的阶段,也分招式和心法。另外,就我个人而言,经常忘记招式,一方面可以说十二年来,我用过的招式很多,到了现在也不记得几个。另一方面我自己也不会特意去记。事实上,十二年代码写下来,我反而越来越不关注招式,而是越来越关注如何解决问题,也就是心法。所以我作为teamleader的时候,我会更加看重这个架构师候选人是不是有一套属于自己的心法。上面说的听着很玄,下面我就宜接回到正题:我们面试架构师候选人时,应该问什么样的问题?大致会有几种类型的问题:•当前技术领域中的一些技术细节•算法和数据结构•方案设计思路第一类:当前技术领域的

3、技术细节类问题针对第一类问题,我认为是很有必要问的,架构师对技术细节的理解,是很能够影响他做架构时的设计思路的。毕竞每一个领域都有不同,了解不同领域的差异,以及特定领域的技术细节,很影响架构时的设计思路和实现手段。然而,这并不是鼓励大家去挖出各种细节的问题,然后去考察架构师候选人,这里需要有一个度。举个例子:你如何去把一个view的所有subview清空?如果知道NSArray有makeObjectsPerformSelector这个方法的人,他们能够说出直接使用这个方法,然后在selector里面写removeFromSupe

4、rView的selector,就好了,而且很省事,一句话就搞定。如果知道NSArray有enumerator方法的人,他们会说出使用这种方法枚举每一个subview,在block里把removeFromSuperView调用起来,也差不多两三彳亍的事儿。不知道NSArray有上面这些方法的人,他会说用for...in…的方法遍历,然后取到这每一个subview,让他们执彳亍removeFromSuperView。可能要花费大概四五行。这几种答案谁的更好?在我看来一样好。为什么?因为这个问题其实考察的是这个人知不知道某个方法,当然

5、你可以说他知道这个方法是因为他仔细看过文档或者头文件。但除了这个以外,这个问题对判断这个人是不是一个合格的架构师没有任何意义。架构师的任务在于使用合理的手段完成架构的任务,上面三种做法都是合理的手段,只不过是实现技巧上的不同而已。这样的问题还可以拓展开来:你完全可以问一个架构师候选人某一个领域的这种类似问题,而恰好你比他熟悉,如果候选人答不上来,你会认为他可能在这方面花的时间还不够,这方面的理解不够深,导致减分。但如果答上来了,有可能加分有可能不加分。然而,这一切并没有什么卵用。如果角色对调,让候选人来面试你,他完全可以问出各种

6、这样类似的问题,一样让你抓耳挠腮百思不得其解。那么该如何考察一个架构师候选人对自己领域中技术细节的理解呢?我们来看下面这些问题:•你觉得block当初是为了解决什么样的问题而设计的?你如何区分何时使用block,何时不使用?•你觉得ReactiveCocoa当初是为了解决什么样的问题而设计的?你何时会考虑使用RAC,何时不用?•你觉得MVVM这样的思想是为了解决什么样的问题而产生的?答案在本文不是重点,当然如果各位对答案感兴趣,可以在评论区问一下,我在评论区回答。在我遇到的各种而试官中,我从来没遇到过能问出这样类似问题的而试官。

7、我而试别人的时候,我问过这种比较侧重对某一项技术的理解的问题,有人能答好有人答不好,然后从招进来的人看,当初答好这种问题的人,后来都在团队中起到了顶梁柱的作用。答不好这样问题的人,但是他们因为知道很多技术细节,也还是招进来了,虽然也能很好地完成需求和任务,但是代码结构、设计思路都会有或多或少的缺陷,写出来的组件在使用上也会感觉怪怪。所以,考察一个架构师候选人在某一领域的技术时,通用的技术细节的问题可以问一下,偏门的技术细节问出来就很没有意义。一个架构师最关键的是他对技术的理解深度,理解深刻的人,才能写出简单易用易拓展的架构。然后

8、面试官需要区分好问题,有些问题是属于“知道、不知道”,有些问题是属于“理解、不理解”,对于而试一个高级工程师来说,可能会比较偏向前者,因为他需要知道足够多,然后完成需求的速度才快,不需要总是去Googleo但对于而试一个架构师来说,其实大部分基础知识应该是已经具

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。