程序员怎么包装自己,程序员刚刚培训出来怎么包装简历

时间:2022-10-07 02:41:03阅读:1433
选自towardsdatascience作者:Sten Sootla机器之心编译参与:Panda W你也许还未入行,或是刚入行或工作了几年的程序员,但有时候,你可能会希望别人认为你很强,是个天才,就像电影里那种一手抱妹子一手拿香槟,用脚…

选自towardsdatascience

作者:Sten Sootla机器之心编译参与:Panda W

你也许还未入行,或是刚入行或工作了几年的程序员,但有时候,你可能会希望别人认为你很强,是个天才,就像电影里那种一手抱妹子一手拿香槟,用脚写代码攻破军方网站的炫酷黑客。可能有些夸张,但 Sten Sootla 觉得你可以做到。Sten Sootla 是机器人初创公司 StarshipTechnologies 的机器学习工程师,本文就是他发布的将自己伪装成大牛程序员的方法心得,堪称「程序员装 X 指南」。

程序员都是巫师——是一些能把咖啡变成代码的衣着简陋的穷人。我不懂巫术,我只是个魔术师。我的工作是伪装成程序员,甚至比真正的程序员看起来更像程序员。 我做得很棒,绝对算得上一个出色的江湖码农。我成功诱使过商人请我去当他们的技术合伙人。我也欺骗过工程师,让他们向我咨询有关通用人工智能的问题。我的表演是如此真实,以至于司法部有一次都向我征求建议,询问我如何使用 Visual Basic 创建用于跟踪连环杀手 IP 地址的 GUI 界面。 秘诀就是:你知道什么无所谓,重点是你怎么展示。 真正的工程师其实缓慢又无聊,因为他们都在现实之下负重前行。而表演者只会被自己的想象所限制。他可以自由地表演最复杂详尽的场景,越风骚越好。

如要表演让人信服,你需要一个精细复杂的舞台,因为这能转移观众的注意力,让他们意识不到你其实缺乏深度。在电影里面,堆叠三维方块或鼓捣某个全息图就能写出软件。当然,这些都是幻想。在现实生活中,你能使用的最相近的东西是三种已经颇有时日的技术——它们全都诞生于几十年前。 第一,你要有 vim,这是一款高度可定制化的文本编辑器,但是超难用,已让数百万开发者不经意间陷入麻烦,根本搞不清楚究竟如何关闭这个东西。光是你有胆量使用它这一事实就足以让你的同事刮目相看。使用 vim 会让你看起来简直就是个神话人物,诉说着历史之中那神圣的编辑器之战,人们会受到你的激励,支持你讨伐 Emacs 教。

来自维基百科

第二,你要有 tmux,这个工具能让你在单个终端窗口打开多个窗格。也就是说,你可以在一个窗格写代码,在另一个窗格运行终端命令行,然后还能在其它一些窗格运行一些毫无用处的插件——比如音频频谱图和超大的时钟。通常来说,你需要尽可能地多打开窗格,用壮观恢弘的场面让观众目不暇接。我本人就从来不关闭任何一个窗格,因为就算代码根本没法工作,它也能增光添彩。

给你展示个例子,这是我在生成一些 deepfake 时的屏幕截图:

最后,掌握 bash 是至关重要的,这是一种直接在命令行中使用的脚本语言。了解 bash 能尽可能地延长你在命令行中的时间——在表演中途离开命令行可不行,这就相当于在播放电影时打开了影院灯。你需要计算什么东西?要这样:echo "scale=0; 2 2" | bc。想知道你的 CPU 使用量?你得使用这个命令:mpstat | grep -A 5 "%idle" | tail -n 1 | awk -F " " '{print 100 - $ 12}'a。现在你懂我意思了吧。 但离开命令行还不是最糟糕的,你更不能离开键盘。使用光标(鼠标和触控板)是无能的体现。如果你有一台 PC,赶紧抛弃那人体工程学上畸形的鼠标。如果你使用的是笔记本,你要在触控板上粘一张铁砂纸——以后你看到它就会想起鲜血和疼痛。 现在,如果你是在命令行中操作,只使用键盘已经很容易了。为了也能在浏览器中保持这种姿态,你要使用 Vimium,这是一款 Chrome 插件,能让你不用鼠标也能浏览网页。它会用一个按键序列标记网页上的每个链接,按下这些键会模拟一次对应的鼠标点击,然后打开对应的页面。这看起来是这样的:

提醒一下,看到我在浏览互联网时也开着终端吗?这就叫专业。正如剧作家约翰·海伍德(John Heywood)说的那样:「半块面包总比没有好。」此外,仔细看看我的 Chrome 标签栏,里面有一堆 arXiv 论文和 Stack Overflow 帖子。这是故意的。这种从战略角度精细排列的标签是为了传递出这样一个信号:你已是饱经历练的机器学习工程师——一手抓理论,一手搞实践。 有了这样的舞台设置,就可以开始你的表演了。你做的所有事情都应表现出你能在最大程度上完全不使用鼠标。也许你还应该躺在你的椅子上,把脚搭在桌子上,然后把键盘放在大腿上。我本人会窝在一个离我的四十英寸显示器三米远的懒人沙发里晒太阳。 至于表演本身,你要记住:需要巴洛克式的华丽风格,不能搞极简主义。你需要用你那敏捷的手指运动和复杂切换操作来惊呆你的观众。在使用 vim 时,你要不断从一行跳到另一行,从一个函数跳到另一个函数,你要动作飞快,快到旁观者怀疑自己的眼睛。而就在他们的眼睛刚刚开始适应的时候,就在他们刚要认清你在搞鬼的时候(这些代码行基本上没有任何实际有效的代码),你要马上切换到另一个 tmux 窗格,让他们继续摸不着头脑。

优秀的表演是通过所引起的困惑和沮丧程度来衡量的。优秀的表演要让人晕眩。一定要真真切切地横扫你的观众,让他们站立不住,只能流着口水浑身抽搐地惊倒在地。 也许你会觉得这样的马基雅维利式策略虚假不真诚,这种浮夸做作实在愚蠢可笑。你宁愿低调地专心工作,希望在辛勤诚实的劳动之后能得到认可。 也许你确实会得到认可,但为什么要把你人生最好的十年时间浪费在埋头苦干上?为什么不把腿放在桌子上表现得像个大佬?我跟你讲啊:假装成大人物可比当个真实的小人物好。

原文链接:https://towardsdatascience.com/how-to-fake-being-a-good-programmer-cbef2c39764c

程序员怎么包装自己,程序员刚刚培训出来怎么包装简历

如何成为一个牛逼的程序员?

兴趣

兴趣是最好的老师

兴趣对于牛逼的程序员来说,是非常重要的;

对于没有兴趣的人,代码的世界往往是非常枯燥无味的,想要成功一名牛逼的程序员,毫无疑问需要投入大量的时间进行理论学习、代码实操;

而如果你可以一直强迫自己做自己毫无兴趣的事,且效率仍然很高,那请忽略这一点,你拥有成为任何一个领域大佬的潜质。


如何保持与维护兴趣?答案就在下文的Peak-End Rule峰终定律中。


峰终定律

峰终定律是指如果在一段体验的高峰和结尾,体验是愉悦的,那么对整个体验的感受就是愉悦的。

我们在学习中总是会遇到很多“难啃的骨头”,


我们又如何能在被这些困难阻拦之后,不磨灭对学习的热情?


拿我自己举例,我总是会在学习遇到难题或者是一天学习生活要结束的时候,到Leetcode上做一题我一眼能知道思路的算法题,这可以让我感觉到一天下来的学习都是快乐的,不至于磨灭对学习的激情。


所以大家可以在学习的过程中,穿插着学习自己最感兴趣的部分;


在学习的最后时刻,千万不要因为学习的困难而草草结束,一定再加一段自己最喜欢的部分。这样我们就可以欺骗到自己大脑了。


拥有计算思维

学会跟计算机一样去思考


什么是计算思维?

其实很多框架,工具,设计的原理,其实其思路不过就是我们身边的一件一件小事的抽象应用。


应该多站在设计者的角度看待一个框架,一个设计,这样你就不仅仅是一个工具的使用者,慢慢地也就拥有了和设计者一样的思维。


将困难的问题简单化,我觉得这是一个牛逼的程序员应该具备且熟练应用的能力。

当你一边看书一边听歌,这就是并行处理。

比如:有一杯橙汁A和一杯苹果汁B,如何把两个杯子里的液体交换一下呢?我们可以用另一个空杯C,将橙汁A倒进空杯C,将苹果汁倒进A,最后将C杯里的橙汁,倒进B杯中。就完成了。这就是题目中的a,b中的数值交换,c=a;a=b;b=c;借助c 完成了两个数据的交换。这是计算思维中的数据交换。

“古典兔子”问题:有一对小兔子,从出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。按此规律,假设没有兔子死亡,第一个月有一对刚出生的小兔子,问第n个月有多少... 这是计算思维中的递归方法。

当你把你明天需要带的东西放进背包;这就是预置和缓存。

当你的东西丢了,你沿走过的路回寻;这就是回溯。

为什么停电时你的电话仍然可用?这是失败的无关性和设计的冗余性。

如何去锻炼?

没有人天生就有编程思路,编程思路是经过一定训练后,养成的。

学会独立思考

这一点是非常重要的,如果当你一遇到问题就寻求他人的帮助,那自己又如何有机会去训练自己的思维呢?

面向搜索引擎编程

这一项貌似与上一项有矛盾,其实不然,待我分析给你听:

我们平时遇到的编程问题95%其实都是别人已经遇到过的问题了,且一般网上已经会有较为详细的解决方案与具体的原因。

而想要通过搜索引擎编程找到答案,则就必须运用到将复杂问题简单化的思维才能较好地描述自己的问题;

在这些回答中,我们又要进行不断筛选,哪些方案是不可行的,而这个过程,我们又必须进一步地对这个问题的模型与其底层原理进行深挖。这就达到了锻炼思维目的。

学会举一反三

将新的问题转化为旧的问题。

使用之前的解决问题的模版解决现有问题;

之前在某公司实习的时候,领导让我设计一个高效且稳定的日志记录。

我就借用了Redis的持久化方式中的aof与rdb思想,

实时地记录每一条日志,保证日志记录的稳定;

再在空闲的时间,汇聚、整合过去的日志信息,以达到高效读取的目的。

付出时间与精力!

没有付出就没有收获。

付出时间与精力

精力就像种子,想要在哪里开花结果,就把他们撒在哪里。

没有真正的“天才少年”

其实每个被称为“天才”、“大佬”的人,背后的付出的精力通常都是常人的几倍。

所以,不要再抱怨为什么自己这么弱了,行动起来,把游戏和抖音卸载了吧。

提高效率的方法

提高效率是非常有必要的,大家都不喜欢做费力不讨好的事,这里推荐几个我试过的且收益不错的用于提高效率的学习方法。

番茄时钟

将时间细粒度化;

强制自己保持一段时间的高度专注,然后再进行适当的休息,会让自己进入更加投入的状态,效率会更加地高效。

这个方法,适合刚进入学习阶段的人使用,在专注力,自律性得到一定的锻炼之后,往往就能形成自己的生物钟,能够很好地控制自己的专注力了。

费曼学习法

这是我用过收益最高的学习法,没有之一!

费曼学习法的核心就是:将复杂的问题简单化。

假设你身边有一个8岁的小孩,你需要将你学的知识教授给他,且词汇量和注意力刚好能够理解基本概念和关系。

这时你就必须将你学的“高大上”的东西,将其类比成我们生活中常见的事物,用通俗易懂的语言让他能够理解。

这同时就在锻炼我们将复杂的问题简单化的能力,我们不得不去重新理清整个知识的脉络体系,从而达到一个查缺补漏的目的。

但是其实并没有人无聊到愿意来听你对这些知识的大白话解释(还不如刷抖音快乐),所以你只能想象你真的在对一个小孩子教授这些知识。

或者用写博客、画脑图的方式,将这些内容记录下来。

想象着有人想要了解这部分知识,而又刚好看到了你的博客或脑图,你该如何详细地讲述给他们听。

建议大家在学习一部分知识之后都能够写篇博客、画幅脑图来理清知识的脉络关系。既可以让自己更好地将知识体系整理吸收,也可以让自己更加直观地感受到自己在这一段时间的学习中的确是有收获的,增加了自己的成就感,达成良性循环。

自我相信

当然这里的自信不是说盲目的自信,而是在拥有一定的基础之后,敢于跳出自己的舒适区。

心理学认为人对于外部世界的认识可以分为三个区域:舒适区(comfort zone) ,学习区(learning zone),和恐慌区(panic zone)。

比如说我们看一本书,如果这本书所说的内容都是我们所熟悉的,完全符合我们已有的世界观和人生观,这本书就在我们的舒适区内。

但如果这本书说的内容与我们原有的世界观和人生观不符,但是我们思考之后仍然能够理解接受,那么这本书就在我们的学习区内。

如果这本书我们根本就理解不了,那么就是在恐慌区。

只有在“学习区”内做事,人才会进步。

绝大多数人工作以后干的事情都是他的舒适区内的某种意义上的重复劳动,这怎么能进步呢?

随着年龄的增长,一个人获得挑战自我的机会会越来越少。

这往往并不是年龄歧视,而更多的是市场合理调配的必然结果。只有那些有特殊机遇的人才能不断尝试新的生活。

所以我们需要怎么做?

办法无非就是尽量呆在自己的“学习区”里,并且随时对“舒适区”保持警觉。

程序员怎么包装自己,程序员刚刚培训出来怎么包装简历

小白如何变成大佬?

能力(技术能力)与责任心谁更重要呢,都重要。如果一个新人有培养的潜力,那么责任心就更重要。两个人,第一个技术能力很强,但责任心很差,对项目的事情也不上心;第二个能力差些,但责任心强,是自己的问题一定负责到底,即使自己不能解决也能主动寻求帮助。我觉得前者对项目的危害更大,特别是项目紧要时期,因为能力强的人一般负责的是比较复杂、困难的功能,别人上手也需要时间,这个时候如果摞担子,Bug 也不修,那么就很为难了。不负责任的典型表现就是扯皮、甩锅:这不是我的 Bug、不关我的事。有协作的地方更容易出现问题,比如前端与后端、各个部门之间。如果不清楚到底是谁的问题,不妨主动一点,帮助排查。

评论

  • 评论加载中...