Contents

How to Define Engineer

如何定义一个工程师

这里说的如何定义指的是工程师的前缀,目前有前端工程师,后端工程师,全栈工程师,数据库内核开发工程师, SRE 工程师, Dev-Ops 工程师等等。这些我认为都算正常,符合我所理解的,对工程师的定义。

但是我在招聘软件上看到的一些职位,令我感到非常迷惑。

C++ 工程师, Python 工程师, Golang 工程师等等。

???

这些对工程师的定义是什么意思?举个例子,C++ 能做的事情很多,多到数不过来,跨越的领域也是数不胜数。怎么可以用 C++ 一个编程语言去定义一个工程师呢?

还是说他要找一个只会专精于 C++ 的工程师,如果跨领域这么办?有人会说 JD 会写得更加清楚一些。

但是我想说明的是,这是一个不正常的现象。不应该用编程语言去定义一个工程师。据我所认识的,很多优秀的工程师都是多面手,他们有自己专精的领域,掌握多门编程语言(这个点几乎都不是重点)。

重点是他们有自己专研的领域。能够在自己的领域做出一些让世界变得有那么一点点不一样的东西。

对于招聘市场使用这种方式去定义一个工程师,我感到的是非常失望。

我在思考,纠结是 HR 定义的?还是用人部门下的定义?

我觉得还是用人部门定义的,而且这个部门大概率是打杂部门。也就是什么都得做做,但是在业务领域上不会去深入。

这是一个很明显的 red flag. 这里需要提醒一下,提高警惕。

不信的话,你还可以去看看各大美国巨头的招聘信息,他们的 title 99.99% 不会涉及编程语言,如果提到,参照前面提到的,警惕是打杂职位。

他们里面几乎都是对领域的相关经验和要求,JD 提到的编程语言部分,机会都是要求一到多门编程语言。所以如果一味纠结于编程语言,这会让人变得狭隘,不仅仅是在职位上,在职业生涯的发展上的选择一样是这样的。

一些旅途上的想法,欢迎纠正