如何不用担心成为一个坏程序员

无意中发现了“冒充者综合征”的另一种表现形式,总是质疑“我是一个真正的开发者吗,或只是一个善于网络搜索的代码搬运工?”

我看到的答案忽略了要点,因此我打算接下这个烂摊子,好好解说一下,因为太多人都有着这种担忧。

善于寻找信息并不能说明你笨

我经常听到的一个我认为是杜撰的,但却揭示了一定真相的故事,它的主要内容是:当问及电话号码的时候,爱因斯坦查找了一下,说他为什么要记住他可以在不到两分钟时间内找到的东西?

在80年代,学者的标志是拥有一本百科全书。你甚至大部分都没有读过:我家最令人印象深刻的百科全书是1937年出版的,并且关于纳粹党的条目不过两个段落,这意味着这本百科全书并不是什么大部头。我光知道其中一个最令人难以置信的错误信息点,就让我跻身于聪明人行列。因为当时,有趣的信息是很难获取的,不过一个冲击就使得你成为一个学者。

现在,即使是最无知的平民也能得到他们想要的任何信息,学者精英俨然败退,但却开始宣称他们有一些基本的大脑功能,使得他们能够比其他任何人更好地导航这些泛滥的信息。在所有最有吸引力的谬论中,有一个概念上的真理:当你使用互联网来查找关于蜥蜴人的文章链接时,很容易萌生一种鹤立鸡群的感觉。当你浪费一整天的时间来解决bug,直到去搜索Stack Overflow,发现上面早在3年前就已经有5个人指出了解决方案,并且其中两个表示要是有人不知道答案就是傻瓜的时候,也很容易觉得自己略逊一筹。

新平民主义的信息检索引擎可能会让你感觉使用任何人都可以使用的东西很low,但这种糟糕的精英情绪真的是你应该抹杀的。

忘了关于爱上工作的所有废话

我最喜欢的工作一直是洗碗。我很擅长,并且我可以在自动驾驶仪上洗,它能够让我的大脑自由地天马行空。最好的情形是什么?如果在一天结束时我为一家繁忙的餐馆洗了2000个盘子,看上去憔悴不堪,却没人让我坐下,还来问我为什么不对我的洗碟子技术充满激情。

如果热爱你的工作成为了做这个工作的不可谈判的先决条件,那么文明就会崩溃。我敢肯定,有人会对他们for循环中标记i++和++i之间速度差异感到精神上的满足,并为此感谢上帝,因为会有人来接手我们乱七八糟的程序。其余我们这些平庸的人只要祈祷,“调试”邮件文件夹中的未读警告在数量不要上升如此之快,使得我们不得不应付它们。

过去的时候,在他们打包马提尼午餐和扔掉激励性标语之前,关于工作的重要部分,并不是你热爱它;重要的是你不讨厌并且不会让你的同事讨厌它即可。现在,为了薪酬,工作俨然已经成功地战胜了色情书刊,让我们孜孜不倦地装作乐于其中。雇主告诉我们即使是在圣诞节夜晚也需要保持手机畅通,没问题。有些程序员

使得他人讨厌他们的工作和自己也没关系,因为,好吧,那家伙热爱编码。并且如果你没有将星期六晚上的时间用来自己学习递归教程则完全是你自己的错。

和销售不能比

现代的初创企业用最糟糕的方式调用高功能的冷漠。因为创造技术的人才是真正热爱攻克基于tape的技术,所以我们有一堆由销售部门和技术部门组成的公司,因为相关的其他工作已经外包给另一个网站,同时该网站又是由另一家由销售部门和技术部门组成的公司运行的。如果你从事销售,那么热爱或假装热爱你的工作是工作的一个组成部分。这就是为什么销售热情高昂的原因。如果你从事高科技工作,那么你的工作就是使一些东西工作起来,并且你可以和热情的那些人一样很好地完成工作,因为你销售的唯一产品就是你实现Stripe api的能力,并且没有人会因为做到这一点而争强斗胜地欢呼。

你公司的所有会议中,一边是精神抖擞、吸引眼球的销售人员,另一边是精神疲惫、希望会议快点结束的开发团队,之所以希望快点结束是他们已经在怀疑得需要多久才能指出竞态条件bug,而且他们知道这其实不是真正的竞态条件。

你可以不担心这一点。也许你社交能力强,对此兴致勃勃,眼神铮亮,也许你不具备这些能力。但是这和你的工作能力无关。

忽略学究人士

当然,有人会说,“每个程序员都应该知道X。”

我不知道X。冒泡排序?我猜那和吉尼斯有关系。B树?听起来像常青树。哈希表?我学的是PHP编程,所以直到两年前我才知道哈希表不同于数组。当OkCupid雇用我的时候,我并不知道哈希表和数组之间的差异。但神奇的是,他们还是给了我一份工作。

不管你是什么编程工作,总会有大量你不懂的编程内容。当你下定决定学会世界上的每一种编程语言时,一些十二岁大的俄罗斯小孩会嘲笑你不知道如何超频你的CPU。同时,当一美国人吮吸着拿铁咖啡,问你为什么不关闭系列B的时候,韩国孩子会黑客你的PS4帐户。法国ops人只会向你吐唾沫,当你要求她不要再服务器房间抽烟的时候。

编程是新的,最初那个不得不挖掘机器代码的John McLanes仍然活着,并指责我们是懒惰的。但是现在的编程和任何其他的工作一样,因为任何你需要做的以满足业务开发部团队的都可以通过学习掌握。

面试是地狱,克服它

你将走进任意给定的面试,带着所有你掌握的知识,临时再抱抱佛脚。大多数时候,你都想着走出面试,索性放弃得了,哪怕依然在原来的状态上苟延残喘。每个人都知道其他人不知道的东西,并且我们中的大多数人最终会处于由另一个人来决定我们将来去留的境地,基于我们知道别人不知道的东西。

所有面试过程都是有缺陷的。并且它们将依然有缺陷,只要我们还是缺乏一种预测候选人生产工作能力的算法。只是一文钱难倒英雄汉,所以我们不得不硬着头皮迎难而上。

尺有所短寸有所长。他们之所以要面试你,肯定有你的专长和闪光点和需要你做的地方。即使你觉得自己是冒名顶替综合征,那也别害怕,珍惜它,因为老老实实没有冒名顶替综合征的才是一个傻瓜。

赚钱

你拿到你上个月的薪水了吗?如果拿到了,那不错。你能够自食其力了。你是搞程序的?对吗?ok,上个月的薪酬只是让你领先于世界上80%的打工仔,更不要说那些找不到工作的人。所以如果你下个月依然有薪水,那么说明你不是冒名顶替的。

如果你只是需要一份工作,能够并愿意接受计算机作为谋生的工具,那么你拥有保持信息时代运行的一切。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要成为一个高级程序员,需要以下几个方面的努力: 1. 学习基础知识:熟练掌握一门或多门编程语言,如 C++, Python, Java 等,并了解计算机科学的基础知识,如数据结构和算法。 2. 实践项目:通过实际项目练习编程技巧,并且不断加深对编程语言和技术的理解。 3. 阅读技术文章:阅读与技术相关的文章和博客,了解最新技术动态,并不断扩展知识面。 4. 参加技术社区:参加相关的技术社区和在线课程,与同行交流经验,并不断学习新技能。 5. 保持持续学习:不断学习新技术,不断完善自己的编程技巧,保持对编程的热情。 以上只是一般性的建议,具体情况因人而异,你可以根据自己的兴趣和目标来制定学习计划。 ### 回答2: 成为一个高级程序员需要具备以下几个方面的素质和能力: 1. 扎实的编程基础:高级程序员需要熟练掌握至少一种编程语言,懂得常用的数据结构和算法,并能够独立解决复杂的编程问题。 2. 深入的技术理解和学习能力:高级程序员需要持续学习和掌握新的编程技术和框架,能够在不同的技术领域中自如地穿梭。通过阅读文档、参与项目和实践来深入理解技术。 3. 高效的问题解决能力:高级程序员需要具有快速定位和解决问题的能力,能够通过分析和调试找到程序中的错误,并能提供高质量的解决方案。 4. 代码质量和工程化思维:高级程序员注重代码的可读性、可维护性和扩展性,能够编写出高质量的代码,并懂得使用版本控制工具和自动化测试等工程化的方法提高开发效率。 5. 良好的沟通和团队合作能力:高级程序员需要与团队成员进行高效的沟通,协调问题,并能够适应和融入团队工作。 6. 主动学习和个人项目经验:高级程序员需要积极主动地学习和探索新技术,同时实践个人项目,锻炼自己的编程能力和解决问题的能力。 总之,成为一个高级程序员需要不断学习和精进自己的技能,拥有扎实的编程基础、问题解决能力和工程化思维,同时注重团队合作和与人沟通的能力。通过不断地实践和自我提升,可以逐渐成长为一个高级程序员。 ### 回答3: 要成为一个高级程序员,需要具备以下几个方面的能力和素质: 一是专业知识。一个高级程序员需要有扎实的计算机科学基础,熟练掌握多种编程语言和开发工具,并深入了解各种算法和数据结构。除此之外,还应该对软件工程、数据库设计、网络通信等方面有全面的掌握。 二是持续学习能力。程序语言和开发工具不断更新迭代,需要时刻保持对新技术的学习和了解。高级程序员应该注重不断学习新知识,参加培训课程、阅读相关书籍、关注最新技术动态,以保持自己的竞争力。 三是解决问题的能力。高级程序员需要具备独立分析和解决问题的能力,能够迅速理清问题的本质,提出切实可行的解决方案。在解决问题的过程中,需要运用自己的专业知识和经验,善于利用调试工具和查找资料,持续追踪和修复Bug。 四是团队协作能力。高级程序员通常会承担一些技术带头人的角色,需要与团队成员紧密协作,共同完成项目。与人沟通和合作的能力是非常重要的,要能够有效地交流、协作和解决问题,推动项目的顺利进行。 五是对待工作的态度。高级程序员需要对自己的工作有高度的责任感和专业精神,对待每一个任务都要认真对待、积极主动,追求卓越。在工作中,要保持学习的热情,勇于挑战和创新,不断提升自己的技术水平和解决问题的能力。 总之,成为一个高级程序员需要不断学习和提升自己的能力,具备扎实的专业知识、解决问题的能力、团队协作能力和良好的工作态度。只有不断努力和积累经验,才能成为一个高级程序员
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值