Cerner Onsite 面经

刚刚收到Cerner的offer。因为有个team直接要我,所以直接给了software engineer的package。71000底薪,5000签约费和3000搬家费。

Timeline

8/6 recruiter在linkedin看到简历,电话联系。

确认了一下简历上的内容,发了份最新的简历过去。预约了第一轮电面。

8/13 senior recruiter第一轮电面。

再次确认简历内容。

behavior question。

问了一个设计Address的设计问题。

给了onsite。因为公司程序员出差去了,直接推到两周后。

8/28 onsite

8/27的飞机,提供过夜。在Sharenton hotel住了一晚。 不是experience cerner day,可能是因为不是周三周四(通常都是周三周四),没有逛,没有欢迎会,也没有早午饭。但是。。。

cerner挺有钱的,随便叫客房服务,第二天checkout直接全划他们帐上去了, 干的漂亮。当时还以为会影响后面的面试。

7点45就在酒店楼下集合出发,去的是南边的一个innovation†campus。面试很赶,因为中间少了一轮video面,所以直接三轮,

每轮一小时。早上9点半开始,最后一轮拖了15分钟,快12点才出来。

出来之后直接送机场,也没有体验一下午饭。

三轮的technical question

  1. Allergy class

让你设计一个类来表示一个allergy。一个allergy可能有各种sympton和reaction。一个allergy可以由一个病人或其亲属来report。

一个allergy有它的严重程度。

  1. Medicine schedule

一个病人要吃药,吃药的pattern有很多:吃n次,吃n天,余生都要吃,按需吃。给你一个start date,让你输出一个schedule包含每次吃药的时间。会给一个他们自己的Calendar类的文档让你来操作。

各个日期还是用Date类存放,文档里可能会缺乏Calendar对Date的转换。面试之前最好对java 1.7和 1.8的Date, TimeZone, LocalDate, Calendar和SimpleDateFormat†之类的接口了解一下,实际码一码。有可能还有设计Birthday的问题。

  1. Temperature class

给病人测体温,病人的体温一天内会有一度的波动,各个病人的体温也不同,体温可以由不同单位表示,可以由不同部位测。

如何设计一个体温的类。如何判断一个病人是否发烧。

好像最近所有人都是面的这三题,或者vedio面第一题,onsite面后两题。glassdoor上还有更多的题目描述。都是ood。

encapsulation和enum多用就行,其它pattern啥的其实没啥要求。多和考官交流。

白板很小,要仔细规划一下再码。

三轮都会有很多behavior question。每个面试官问的点都不太一样。只要体现出积极的意愿即可。很多时候都会问关于简历上的东西。多说说自己的经历。回答问题要从经历里举例子。

面试官基本都是team†leader。各个组做的事情差不太多,基本前后台什么都写。web为多,native开发较少。

Cerner据说每年都有一个starwars主题的conference,可以展示自己的研究成果啥的。

最后是dress code:

面试一定要着正装。这一点看来很重要。

补充内容:

说错了,9点半是两轮的onsite,我是8点半开始的。

楼主Birthday是怎么设计的啊, 可不可以大体指点一下,谢谢了

可以用一个Date放生日。用Calendar啥的初始化,设置时区啥的,来获得这个Date。用SimpleDateFormat来格式化date输出。

生日有两种:

一种是大人的,只需要年月日;

另一种是新生儿的,需要年月日时分秒和时区

大人的生日只需要记录年月日,在不同时区都显示同样的值即可

新生儿的生日需要具体到秒,在不同时区显示的值不一样,所以每次获得的时候要重新设一下时区再格式化输出新生儿应该最后会长成大人,所以最好弄一个转换生日类型的接口

根据生日类型调用不同的构造函数,或者用factory pattern之类的东西,如果想显得很腻害的样子

请问楼主跟recruiter电面完了多久收到onsite通知的?我电面完了也一直没消息,闹心

他是电面的hr就给了onsite

请问楼主跟recruiter电面完了多久收到onsite通知的?我电面完了也一直没消息,闹心

我是电面聊到最后直接就让我onsite了,没有中间的等待