软件作业的一个令人担忧的趋势

工程类职位的面试极其杂乱, 压力大, 而且我必须为所有勇于接受面试以完成作业梦想的人鼓掌, 并对他们表示赞赏.

曩昔几年里, 我一向在为不同的公司面试工程师, 但最近, 我前所未有地拒绝了很多应聘者. 我还是用相同的问题, 没有任何变化, 问题是人们根本不知道高档工程师意味着什么, 而这些专业人员比以往任何时候都更稀缺.

编程 10 年并不能让你成为高档工程师. 这与时间无关.

以下是我的尽力, 只为探讨软件开发作业高档工程师终究意味着什么.

这便是为什么我不接受你是Senior软件工程师

在互联网上发现的盛行笑话.

什么是高档工程师?

我向 ChatGPT 询问了关于什么是高档软件工程师的通用描绘, 成果它一语中的:

高档工程师对编程言语, 软件规划原则和开发办法论有深入的了解.

— ChatGPT, 在抢走咱们的饭碗之前.

这正是经典高档面试的通用结构:

开发办法论

开发办法论是旨在提高团队功率的安排办法. 这些对咱们来说或许很枯燥, 但咱们期望你能掌握这方面的专业常识.

在多年的作业中, 我对非灵敏开发办法产生了排斥心思, 不只如此, 我以为 Scrum 还不够灵敏, 它的详尽运用终究会让项目经理而非程序员的自负增强.

这便是为什么我不接受你是Senior软件工程师

互联网上的笑话.

在面试时, 我期望开发人员具备批判才干, 由于仅仅了解 Scrum 是不够的, 你还必须知道它的缺陷, 并提出处理方案.

我还想看看开发人员是否了解 Scrum 和 Kanban 之外的其他办法, 比如 RUP. 常识能够协助你构成更好的观点, 并标明你愿意学习自己范畴以外的常识.

软件规划原则

这些原则或许一辈子只读一次就会忘记, 但真实熟练的程序员每天都在运用.

明星工程师之所以比同行更有价值, 原因并不局限于编程. 伟大的软件工程师具有惊人的创造力, 能看到他人看不到的概念形式.

Reed Hastings. Netflix 联合创始人.

每次面试结束后, 在给应聘者写反馈时, 我立誓每次都能复制粘贴相同的回复:

我建议你多读读 Python 规划形式, 本攻略便是一个很好的资源.

用规划原则筛选提名人真是太容易了…只要在非常奇怪的情况下, 我才会发现有人能答复所有这些问题.

这便是为什么我不接受你是Senior软件工程师

这是一个笑话, 记录了大多数开发人员在被问及规划形式时的表情.

当你了解了软件规划形式之后, 在实践中完成这些形式或许会适当具有应战性. 我自己就曾面对过这样的应战, 由于在编码时回忆并应用它们并非易事. 但是, 强迫自己在每次编程时进行这一查看, 一定会让你领先一步.

编程言语

为什么咱们在 Python 中运用 len(array) 而在其他言语中运用 array.length()? 这背面有什么优化吗?

你对自己的言语了解多少?

在你生长的过程中, 阅览一本关于你所运用的言语的书是绝对必要的. 任何高档工程面试都会包括一些只要经过阅览才干了解的高档问题.

态度欠好扼杀了许多面试时机

你们能快点供给反馈吗? 现在有其他公司向我宣布邀请.

  • 一位提名人在面试时说的话, 其时他有时间向咱们提出有关该职位的问题.

公司在供给高薪的同时, 也在寻找优秀的人才, 而其间的一部分便是做个好人.

面试时, 咱们不只要评估应聘者的常识, 还要评估她/他的态度. 在我几个月前做的一个具体作业中, 公司特别要求咱们寻找”善良, 诚笃”的人, 而不是优秀的程序员.

与一个虚荣的人共事是非常困难的, 他们会让你一向感觉欠好, 并在团队中形成欠好的氛围. 从长远来看, 这样的人对公司形成的危害或许是非常大的.

态度恶劣或说谎或许意味着在选拔过程中被当即筛选.

我一向向我们推荐<如何赢得朋友和影响他人>一书, 这是一本每个人都应该读一读的书, 以便在生活中拥有更好的人际关系.

这便是为什么我不接受你是Senior软件工程师

互联网上找到的笑话.

记住, 经历丰富的工程师应该能够领导一个团队, 你需求真实强大的社交才干才干胜任这个职位.

初级/中级开发人员要成为高档开发人员, 应该读些什么?

这里有一些让你生长为高档开发人员的绝佳资源:

代码技术如何?

几个月前, 我购买了LeetCode Premium, 这是我找到现在这份作业的一个伟大决议. 在运用过程中, 你会从其他用户那里发现风趣的数学奇闻, 形式和优化办法.

模拟大公司的面试也有助于了解他们的安排结构.

瞄着星星, 才有或许够着天空 — Reinhold Niebuhr

这便是为什么我不接受你是Senior软件工程师

Leetcode 的大公司问题列表.

还有几个网站与 LeetCode 类似, 如AlgoExpertCodeSignal.

严酷的本相

即便你阅览了大量的材料, 每天进行练习, 并积累了丰富的经历, 你也有或许由于不符合公司的要求而被拒绝.

几天前, 我在听一个播客, 他们谈到了一个实验: 让孩子们处理问题, 并把他们分成两组:

当让他们接触新问题时, 被表彰有意志的孩子倾向于挑选更难的问题来处理, 而那些被说成聪明的孩子终究在他们处理的问题上体现得更差.

这说明, 你唯一能盼望自己做到的便是坚韧不拔和坚持不懈. 这些不只是确保你未来作业的技术, 也是咱们对高档工程师的主要期望.