软件工程师招聘,软件工程师月薪( 五 )


这是你在无需实际进入一个行业环境的情况下最接近在行业环境下编程的方式了 。这也是目前为止最难最耗时的一项任务,所以等到你把前面我提到的比较容易取得的果实都摘完之后再干这件事 。
面试你的面试官
在找工作的匆忙与压力之下,很多候选人都忘了面试是一个双向的过程 。在公司努力寻找这份工作的合适人选时,你也应该设法弄清楚这家公司适不适合你 。
确保你也要提出以下一些问题,哪怕对方是以电子邮件的形式回复你 。要意识到公司经常把不遵循最佳实践说成是一项技能,所以要体会其言外之意 。
以下是一些你可以去提问的例子:
“对我来说典型的工作日会是什么样的?”
知道特定岗位预期的样子很重要,因为软件工程工作差别相当大 。比方说你的工作既可能是维护服务器,也可能是直接跟客户沟通 。
危险信号:“我不大肯定 。” → 意味着面试你的那个人不在你的团队,或者他们对为什么要招你并没有明确的想法 。
“你们是如何测试软件的?”
理想情况下,验证代码质量应该是单元测试、人工测试以及自动化测试的结合 。
危险信号:“我们都写不出bug,哈哈 。” → 那些人正是会写出bug的人 。
“你们使用什么样的版本控制系统?”
版本控制系统对于协作极其有用,在职业环境下没有理由不使用 。
危险信号 #1:“额,版本控制系统?” → 快跑,跑得越远越好 。
永远记得使用版本控制 。
危险信号 #2:“<插入不知名的或者定制的VCS>” → 这表明他们很有可能没有跟上时代并且很久没有升级自己的基础设施了 。
“你们进行同行评审吗?”
同行评审,或者让别人看看你的代码再把它放进代码库,这是识别愚蠢错误的极好办法,同时也是开始你的职业生涯时一个关键的培训机会 。
【软件工程师招聘,软件工程师月薪】危险信号:“我们相互信任!”→很有可能那些资深开发者对自己的代码非常警惕不想给人看也不擅长接受反馈 。
“你们的继续教育计划是什么样的?”
作为一名软件工程师意味着当新技术出现、成熟并以令人眼花缭乱的速度走向过时的时候要不断学习 。因此,很多公司都有培训预算用来买大学和在线课程、会议或者内部交流 。
危险信号:“你是说在闲暇时间读读网上的东西?” →这家公司要么资金紧张,要么把开发者视为可替代的,而不是长期投资 。
“你们采用的软件开发流程是什么?”
无论实际的细节是什么,流程对于软件工程都至关重要 。至于哪些东西对于优化流程做出了贡献可能大家会有不同的看法,但仅就项目的工作方式达成一致就能将混乱最小化并且确保每个人都能达成共识 。
危险信号:“我们的流程受到了自由风格的爵士的影响 。” → 很有可能整个部门都处在救火模式,总是不断地从紧急跳到另一个紧急状态而缺乏任何明确的目标 。
“你们是如何处理技术债务的?”
技术债务是过时技术以及代码库中临时应急的解决方案的累积 。处理好技术债务对于代码的长期健康很重要,这件事情应该持续地做 。
危险信号:“我们只关注新功能 。” → 他们的代码库一团糟或者很快就会一团糟 。
“你们的公司文化是什么样的?”
公司文化也许是个非常含糊的概念,但即便像开放办公室还是小隔间这样的小事情都会显著改变你与同事的日常互动 。这方面没有普遍性的危险信号,但是要确保他们的答案是你可以按照每周40+小时的节奏持续相处数年的东西 。

推荐阅读