趁着还热乎,把整个应聘的经历记录下来
* 为什么离开S
* 为什么选择ThoughtWorks
* 准备
* 电话面试 1
* 家庭作业
* 电话面试 2
* 现场笔试+面试
* 电话面试 3
* offer
# 为什么离开S
暂略
# 为什么选择ThoughtWorks
暂略
# 准备
@老赵 在2012年1月7号在微博上发了一篇“求助:一份用于学习单元测试的案例需求”,激起了我和高手交流的欲望,写了份
代码。在这个过程中,我结识了在ThoughtWorks(以下简称TW)工作的tj,接触到了TW的圈子,关注了TW的HR朱mm。
朱mm在1月18号发了一篇微博,透露TW开始在上海招聘,我立刻跟她确认了这个消息。之后通过各种方式了解TW的信息。2月2号和朱mm电话咨询过一次,她非常耐心的回答我各种问题,我随即开始准备简历。
之前的简历一直是Microsoft Word格式,这次我决定换种格式。我近来主张使用文本格式的文档来替代二进制的,这样的好处是不需要依赖额外的编辑器和商业软件,也方便版本控制工具去管理。知乎上
Linux 用戶是否大多都使用 OpenOffice.org 作為辦公軟件?中pansz的答案让我找到了共鸣。最后我选择了HTML,使用了可以让我专注于内容的Markdown语言以及hResume格式。简历的内容也完全重新写了一遍,更加突出了技术能力和兴趣。
2月11号完成简历,tj帮我推荐。
# 电话面试 1
2月13号周一朱mm电话跟我预约了14号的第一次电话面试。这次面试主要是了解我的基本情况,朱mm也讲述了TW的要求。TW和一般IT公司的不同,参见
年轻的程序员,为什么你应该从事专业服务以及
什么是专业服务,以及为什么它是好的职业起点。最后给我发了家庭作业。
几乎每轮面试不断被问到这个问题:为什么离开上一家公司以及为什么想加入TW,这轮也不例外。
# 家庭作业
家庭作业是根据需求写代码,包括测试用例,题目共有3个,选择其中一个完成即可。题目都很适合TDD,于是我也TDD完成了,17号凌晨完成并交付。
# 电话面试 2
21号预约22号第二次电话技术面试。面试官有两个,其中一个是tech lead(后来才知道是zxq)。围绕简历聊了很多,从项目经验到兴趣,包括Hibernate、ActiveMQ、RoR、Spring Framework、iOS等一堆。面试官的技术基础很扎实,知识面也很广泛。有些问题因为没有遇到过或者仔细研究,所以没有答上,这一轮面试被我认为表现最差的一轮,还好我还算广泛的兴趣给面试官留下了些印象。耗时1小时。
# 现场笔试+面试
24号预约现场面试,由于我的时间关系,这次面试被安排在3月2号。
面试官是在客户现场做项目,所以这次面试也在客户的办公室。下午4点开始,先是一个半小时的逻辑题目,全英文对我来说有些难度,在这里感谢一下有道词典。11道题目大致分成3类,第一类题目开始我做起来有些困难,有2道没出来,有些紧张,就做后面两类了。没想到后面两类比较简单,我速度做完了,又回过头做前面的,终于在结束之前都做出来了。后来据说错了1道。然后是半个小时的选择题,做了一半蒙了一半,据说这个题目的成绩对于开发来说没什么关系。
笔试完成后,又等了一会,在他们下班之后面试官才有时间面试。先是波波简单聊了一下技术,然后是波波和大大结对面试。结对面试的主要内容是针对家庭作业进行重构和新需求的实现。让我印象最深的是,大大对于代码的要求很高,对我的代码提出了很多重构的建议,让我很有感触(后来发现他对封装有很深刻的理解)。后来实现新的需求,我只能说中规中矩,得益于我的设计,新的需求实现起来很简单,但是重构的时候没能消除代码臭味,同时大大的思路还是非常清晰,提出了非常好的重构建议,这让我很佩服。新需求没有全部完成,貌似时间到了。
接下来是辉哥和marketing mm yq的面试。也是随便聊了一下,我的问题比较多,他们都耐心一一解答。这个时候我有些体力不支,肚子很饿,眼睛很干涩,一度睁不开。我猜测安排在这个时间面试可能也是一种体力和毅力的测试。
相比上一轮,现场面试让我感觉好了很多。面试结束已经9点多了,于是参加了team building,就是蹭了一顿饭 ^_^ 。
# 电话面试 3
7号朱mm电话过来询问我在经历了几轮面试,对TW有了更多了解后,是否还继续想加入TW。这点让我觉得非常贴心:TW不仅会站在他们的角度看你是否适合他们,同时也会站在你的角度考虑他们是否适合你。后面一点关乎于你的个人发展,对你本身非常重要,但这点恰恰是其他公司很少考虑的。当然这也可能是由于TW的与众不同,也更加要求员工的稳定。最后朱mm说还有一轮面试,要我等通知。
12号通知来了,次日13号第三轮电话面试。据说面试官zs刚从国外回来。本轮感觉像是综合测试,测试了我在实际的工作方式,还有一些常见的面试问题,比如最有成就感的事情,最欣赏和最不欣赏的人等等。耗时40分钟。
# offer
14号朱mm终于说要给我发offer了,15号offer下来后经过一番讨价还价,最终16号offer到手。
这个长达一个多月的应聘终于以收到offer结束了。这里特别感谢tj不厌其烦的回答了我无数的问题。感谢朱mm跟我耐心的沟通,感谢各位面试官的厚爱。
分享到:
相关推荐
ThoughtWorks是一家全球知名的软件开发公司,以其卓越的技术实践、敏捷开发方法和持续创新著称。在ThoughtWorks的笔试环节,应聘者通常会遇到编程题目,这些题目旨在测试候选人的技术能力、逻辑思维以及解决问题的...
reorganize data to work with other systems, or to make MapReduce analysis easier Join patterns: analyze different datasets together to discover interesting relationships Metapatterns: piece together ...
6.2.5 秋风扫落叶-StartThread Pool和join Thread Pool分析 6.2.6 你彻底明白了吗 6.3 服务总管ServiceManager 6.3.1 ServiceManager的原理 6.3.2 服务的注册 6.3.3 ServiceManager存在的意义 6.4 ...
In this scenario, since T1 believes it locks the entire table, it might inadvertently make changes to the same row that T2 thought it has locked exclusively. In a multigranular locking environment, ...
常用1.SchLib
# 【tokenizers-***.jar***文档.zip】 中包含: ***文档:【tokenizers-***-javadoc-API文档-中文(简体)版.zip】 jar包下载地址:【tokenizers-***.jar下载地址(官方地址+国内镜像地址).txt】 Maven依赖:【tokenizers-***.jar Maven依赖信息(可用于项目pom.xml).txt】 Gradle依赖:【tokenizers-***.jar Gradle依赖信息(可用于项目build.gradle).txt】 源代码下载地址:【tokenizers-***-sources.jar下载地址(官方地址+国内镜像地址).txt】 # 本文件关键字: tokenizers-***.jar***文档.zip,java,tokenizers-***.jar,ai.djl.huggingface,tokenizers,***,ai.djl.engine.rust,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,djl,huggingface,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压 【tokenizers-***.jar***文档.zip】,再解压其中的 【tokenizers-***-javadoc-API文档-中文(简体)版.zip】,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件; # Maven依赖: ``` <dependency> <groupId>ai.djl.huggingface</groupId> <artifactId>tokenizers</artifactId> <version>***</version> </dependency> ``` # Gradle依赖: ``` Gradle: implementation group: 'ai.djl.huggingface', name: 'tokenizers', version: '***' Gradle (Short): implementation 'ai.djl.huggingface:tokenizers:***' Gradle (Kotlin): implementation("ai.djl.huggingface:tokenizers:***") ``` # 含有的 Java package(包): ``` ai.djl.engine.rust ai.djl.engine.rust.zoo ai.djl.huggingface.tokenizers ai.djl.huggingface.tokenizers.jni ai.djl.huggingface.translator ai.djl.huggingface.zoo ``` # 含有的 Java class(类): ``` ai.djl.engine.rust.RsEngine ai.djl.engine.rust.RsEngineProvider ai.djl.engine.rust.RsModel ai.djl.engine.rust.RsNDArray ai.djl.engine.rust.RsNDArrayEx ai.djl.engine.rust.RsNDArrayIndexer ai.djl.engine.rust.RsNDManager ai.djl.engine.rust.RsSymbolBlock ai.djl.engine.rust.RustLibrary ai.djl.engine.rust.zoo.RsModelZoo ai.djl.engine.rust.zoo.RsZooProvider ai.djl.huggingface.tokenizers.Encoding ai.djl.huggingface.tokenizers.HuggingFaceTokenizer ai.djl.huggingface.tokenizers.HuggingFaceTokenizer.Builder ai.djl.hu
内容概要:本文详细探讨了电力系统中PMU(相量测量单元)的优化配置问题,旨在确保系统完全可观测的同时尽量减少PMU的数量。作者介绍了六种不同的算法,包括模拟退火、图论方法、递归安全N算法等,并通过MATLAB实现了这些算法。通过对IEEE标准测试系统的实验,展示了各种算法在不同规模系统中的表现。文中不仅提供了具体的MATLAB代码实现,还分享了许多实用的经验技巧,如邻域解生成、退火速率设置、拓扑排序等。 适合人群:从事电力系统研究的技术人员、研究生以及对组合优化感兴趣的科研工作者。 使用场景及目标:适用于电力系统状态估计、故障诊断等领域,帮助研究人员和工程师找到最优的PMU配置方案,提高系统的可靠性和经济性。 其他说明:文章强调了在实际应用中需要注意的问题,如变压器支路的影响、节点编号不连续等问题,并推荐了几篇相关领域的经典文献供进一步学习。此外,还提到了一些有趣的发现,如某些中间节点装PMU反而能减少总数。
# 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
内容概要:本文详细介绍了三菱FX1s PLC与台达MS300变频器通过Modbus RTU协议实现通讯的方法。首先,文中列举了所需的硬件设备及其连接方法,确保PLC与变频器能够正常通信。接下来,针对频率设定、频率读取及正反转启停控制三大主要功能进行了详细的编程讲解,提供了具体的梯形图代码示例并解释了每一步的作用。此外,还涉及到了触摸屏(MCGS和威纶通)的配置步骤,使用户可以通过触摸屏方便地操作变频器的各项功能。最后,作者分享了一些实用的小技巧和常见错误避免方法,帮助使用者快速解决问题,提高工作效率。 适合人群:从事自动化控制系统集成的技术人员,尤其是那些需要将三菱PLC与台达变频器进行互联的工程师。 使用场景及目标:适用于工业自动化领域的项目实施过程中,旨在帮助技术人员掌握三菱FX1s与台达MS300变频器之间的高效通信技术,从而更好地完成系统集成任务。 其他说明:文中不仅包含了详细的理论知识和技术要点,还有丰富的实践经验分享,有助于读者全面理解和应用相关技术。同时,提供的完整工程文件可以直接应用于实际项目中,极大地节省了开发时间和成本。
winrar免费版压缩工具
内容概要:本文详细介绍了灰狼算法(GWO)、鲸鱼算法(WOA)和人工蜂群算法(ABC)在CEC21标准测试函数集上的性能对比。通过设定相同的实验条件(种群数量50,迭代次数500次,30维问题空间),分别探讨了各算法的关键参数调整及其对不同类型函数(单峰、多峰、复合)的影响。文中提供了每个算法的核心代码片段,并针对具体函数给出了优化建议。最终结果显示,GWO在单峰函数上有优势,WOA擅长处理旋转和平移问题,而ABC在高维复杂环境中表现出色。 适合人群:从事优化算法研究的科研人员、研究生以及对智能优化算法感兴趣的开发者。 使用场景及目标:适用于需要评估和比较不同优化算法性能的研究项目,特别是那些涉及高维、多峰、旋转平移等问题的实际应用场景。目标是帮助研究人员选择最适合特定任务的优化算法,并提供参数调优的经验。 其他说明:文章不仅提供了理论分析,还分享了许多实践经验,如参数调整技巧、初始化方法等。此外,所有实验均基于Matlab平台完成,附带完整的代码实现,方便读者复现实验结果。
电控开关.SchLib
# 【spring-ai-autoconfigure-model-openai-1.0.0-M7.jar中文-英文对照文档.zip】 中包含: 中文-英文对照文档:【spring-ai-autoconfigure-model-openai-1.0.0-M7-javadoc-API文档-中文(简体)-英语-对照版.zip】 jar包下载地址:【spring-ai-autoconfigure-model-openai-1.0.0-M7.jar下载地址(官方地址+国内镜像地址).txt】 Maven依赖:【spring-ai-autoconfigure-model-openai-1.0.0-M7.jar Maven依赖信息(可用于项目pom.xml).txt】 Gradle依赖:【spring-ai-autoconfigure-model-openai-1.0.0-M7.jar Gradle依赖信息(可用于项目build.gradle).txt】 源代码下载地址:【spring-ai-autoconfigure-model-openai-1.0.0-M7-sources.jar下载地址(官方地址+国内镜像地址).txt】 # 本文件关键字: spring-ai-autoconfigure-model-openai-1.0.0-M7.jar中文-英文对照文档.zip,java,spring-ai-autoconfigure-model-openai-1.0.0-M7.jar,org.springframework.ai,spring-ai-autoconfigure-model-openai,1.0.0-M7,org.springframework.ai.model.openai.autoconfigure,jar包,Maven,第三方jar包,组件,开源组件,第三方
c++复习题.doc
本科毕业设计(论文)中期检查报告
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
weixin248食堂订餐小程序ssm(文档+源码)_kaic
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
e1e90185ca2f1eda312e7f604d38195c_b4125f83523abcb38acd9dc0deebd500
# 【spring-ai-autoconfigure-mcp-client-1.0.0-M7.jar中文-英文对照文档.zip】 中包含: 中文-英文对照文档:【spring-ai-autoconfigure-mcp-client-1.0.0-M7-javadoc-API文档-中文(简体)-英语-对照版.zip】 jar包下载地址:【spring-ai-autoconfigure-mcp-client-1.0.0-M7.jar下载地址(官方地址+国内镜像地址).txt】 Maven依赖:【spring-ai-autoconfigure-mcp-client-1.0.0-M7.jar Maven依赖信息(可用于项目pom.xml).txt】 Gradle依赖:【spring-ai-autoconfigure-mcp-client-1.0.0-M7.jar Gradle依赖信息(可用于项目build.gradle).txt】 源代码下载地址:【spring-ai-autoconfigure-mcp-client-1.0.0-M7-sources.jar下载地址(官方地址+国内镜像地址).txt】 # 本文件关键字: spring-ai-autoconfigure-mcp-client-1.0.0-M7.jar中文-英文对照文档.zip,java,spring-ai-autoconfigure-mcp-client-1.0.0-M7.jar,org.springframework.ai,spring-ai-autoconfigure-mcp-client,1.0.0-M7,org.springframework.ai.mcp.client.autoconfigure,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,springfram