我(作为一名开发者)所犯过的错误[转]

投递人 itwriter 发布于 2016-11-10 17:49 评论(6) 有657人阅读 原文链接 [收藏] ? ?

  英文原文:Mistakes I made (as a developer)

  我 2006 年开始工作,至今已经 10 年。10 年是个里程碑,我开始回顾自己曾经犯过的错误,以及我希望从同行那里得到什么类型的忠告。一切都在快速改变,10 年了,我不能确定这些秘诀是否还有用。

  不管您是新人还是老手,您都会发现我的话是有用的。我期待听到您的观点,所以请不吝赐教给我回信。

  坚持使用一种平台,框架或者语言

  在过去 10 年间我所犯的最大的错误是:每次换工作时我都会换一个软件平台。

  开始我使用 Enterprise Java Development,然后是嵌入C软件,然后,对于 Windows 桌面应用我使用 VB, C#和C++,然后对于 iOS 应用我使用 Objective-C,然后使用 NDK 做 Android 库,最终做 Android 应用。

  这一职业生涯确实了不起,但是老板们并不在意。你花费 10 年时间进行软件开发并没有什么意义。如果你不能创建 Android 应用,你将不会得到一份 Android 开发人员的工作。

  更换软件平台会对您的简历产生极大的负面影响。让一位雇主决定花大价钱雇佣一位开发者,而他却并非某一特定软件产品的专家,这确实很难。

  许多公司并不在乎你的过去。相比于所有那些年在其他软件平台的工作经历来说,技术面试更为重要。这就是为什么好的开发者即使没有多年的开发经历也会找到工作的原因。

  我们要怎样才能适应市场呢?你能做到的,就像我一样。但是你需要对自己投资:在空闲时间学习新技能,如果需要的话甚至可以休假去学习。还要降低您的薪金预期。您需要退一步然后再进两步。

  一旦您发现一种软件平台、框架或者语言让您充满热情,那就坚持下去。长期来看您的预期薪水和您的就业能力会比频繁转换软件平台要好得多。找到对此技能组合具有需求的最好的公司,跳槽进去。我知道这个道理其实显而易见,但是我却用了很多年才意识到这些。

  不要为了钱而谋求管理职位

  过去我一直认为薪水高的工作是为穿套装和做行政决策的人准备的。虽然对于小部分人这是真的,但是熟练的开发人员通常比中层管理人员工资高。

  在职业生涯中我一直想要成为项目经理。学习了许多有趣的东西后我成为了项目管理硕士。但是,作为产品经理工作了一段时间后,我最终意识到那不适合我。

  作为开发者我们的挫折感来源于不好的公司文化,更确切的说:不好的技术文化。我看到了(企业间在)这两方面存在的巨大差异,我离开了西班牙。(现在)我感到更受欣赏了并且我也更喜爱我的工作了。

  作为一名开发者如果你工作的不开心,晋升并不能解决问题,不如跳槽,换公司,旅行,打开你的心扉并且去国外工作,世界上有许多技术中心急需开发人员。

  开发人员中的沮丧和失败感比我们想象的要普遍。我们的经理们很少理解时间紧迫导致的心力交瘁会影响代码编写,结果和数量。有时候我们仅仅需要出去走走透透气。就象下面我写的诀窍所提到的。

  休息一段时间

  我从未失业过,直到今年。10 年了,我需要休息一下来“重构”自己的职业生涯,这是我做的最好的决定之一。

  我休息了 5 个月,离开我的工作成为自愿的失业者。我能感觉到每个人都多么的担心我的职业生涯将就此终结,但是结果恰恰相反。

  从 10 年间一个一个的换工作,期间仅仅休带薪年假,到现在不用工作,真是太爽啦。在我们的行业中没有什么比所从事的工作不能给你带来快乐更糟糕的事情了。

  就我来说,4 年了,我想要坐下来学习德语,却从未抽出时间去做。在这 5 个月里我学习了精读课程,一天三小时,这让我的语言水平从 A2 上升到 B2,足够应对日常社交活动用的了。

  回去重新工作比我想象的容易得多。所以,如果你需要休息的话就不要害怕休息。在我们的行业里,您简历中的一段空白是容易解释的。但是,如果您这样做,就必须确保按照我下面的建议做。

  ABC:永远不要停止编码

  在我 5 个月的休息期间,我开始了一项个人项目:一个使用 Discogs.com API 的 Android 应用程序。我想拥有一个易用的应用程序,以便从我的收藏中添加和移除记录。我还想磨练自己的开发技能。

  多亏了这个可爱的小项目,我才能够信心慢慢的应对求职面试。它让我尝试了新型的库和开发模式,今天我在工作中还在成功的使用着它们。

  我希望我早就开始这样做。我们的工作趋向于重复化,并且经过几年后变得更无序化。所以我们进行探索试验和自我提升的空间就越来越小。

  拥有个人项目,阅读(书写)播客并且尽量说出自己的想法,从长远来看会让您成为一名更好的开发人员。为了图个乐儿,请将您的代码放到 GitHub 上,并且在社区中分享您的经历吧。

  参与社区

  还是一名学生的时候,我总认为自己没有时间参加小组和社团活动。当我有了第一份工作后,我最不想做的事情是和其他开发人员一起消磨时光。

  我错了。

  聚会和用户组是有趣的并且是您的工作圈子之外与开发者同行们相遇的好地方。如果您想好好利用这些就表现得积极些。提供您的帮助,分享您的经验,与身边的人交谈。每个人都喜欢谈论自己的经验,而且您或许将会遇到一些潜在的雇主。

  一些新手组总是需要培训师。您还可以去指导新人,开讲习班,甚至发起赞助活动。

  如果您不知道从哪儿开始,在 Twitter 上提问,在 Meetup.com 上搜索。查找 Google Developer Groups,Cocoaheads 或者 JS usergroups。本地组总是好于全球社区,去参加见面会吧,玩得开心些。

  当然,要注意行为举止。学习他们的行为准则并严格遵守。去获得不同类型的人的喜欢,不要怕与他们交谈,以便您多元化发展。

  忽略招聘公告

  我的最后一项智慧。不要通过各种招聘公告获取工作。

  招聘公告已经被玩坏了。过分复杂的人力资源流程,候选人追踪系统,简历垃圾邮件以及缺少必要清晰的沟通,这仅是各个公司不再依赖猎头公司的小部分原因,猎头公司不可能找到天才人物。

  真正的天才会忽略招聘公告。网络是一个途径。如果处于本地社区中,您将获得最新消息——何时有人离开了一个重要岗位,何时一家您感兴趣的公司获得了资金以及谁在招聘。

  您还会知道一些公司比另一些公司更好。许多正在招聘的公司内的开发人员会对您很真诚,他们会告诉您他们的经理是否厉害,甚至他们的工资如何。

  如果您看到一个感兴趣的工作机会,请查看您的网络。看看您的用户组或者 LinkedIn 中是否有人在那里工作或曾经在那里工作过,或者问问是否有人认识那里的人。直接和他们联系,与首席技术官、人事部经理或者公司的其他开发人员交谈。

  猎头公司确实不错,但是不要依赖它们。他们的任务是赶在别人之前填补一个职位空缺,他们不是在那里帮助您找工作,他们不为您工作。如果他们提供的位置恰好是您要找的,那就去努力争取,如果不是您要找的,就说谢谢,但是没必要真的感谢他们。

  我希望我的文章对您有所帮助。我想这些归根结底是快乐和有趣的。不要有太高的追求,仅仅把开发作为一项爱好来喜爱,这样您会永远喜爱您的工作。

  • 坚持使用一种软件平台,框架或者语言。从长远来看您的职业生涯将会更好。
  • 如果您真的想成为一名开发人员,不要被迫担任管理职务。
  • 如果需要的话休息一段时间
  • 不要停止编写代码,拥有个人项目并且把开发当成一种爱好来享受。
  • 参与社区活动,参加聚会,玩的开心并获得恢复。
  • 忽略招聘公告,构建您的网络,如果您想要找一份新工作的话就和人们谈谈。

  谢谢阅读。

  -

  译文链接:http://www.codeceo.com/article/mistakes-i-made-as-a-developer.html

  翻译作者:码农网 – 青岛海边

1

0

来自: www.codeceo.com

时间: 2024-10-12 21:16:50

我(作为一名开发者)所犯过的错误[转]的相关文章

Java开发者常犯的十个错误

翻译自:Top 10 Mistakes Java Developers Make 文章列出了Java开发者最常犯的是个错误. 1.将数组转换为ArrayList 为了将数组转换为ArrayList,开发者经常会这样做: List<String> list = Arrays.asList(arr); Arrays.asList()会返回一个ArrayList,但这个ArrayList是Arrays的私有静态类,不是java.util.ArrayList.java.util.Arrays.Arra

这算错误吗:开发者容易犯的六个致命错误

摘要:所有的应用程序创建者都对自己的应用寄予美好的愿望,但是很多错误是在他们无意识的状态下破坏app的设计,没有开发者或者设计师会故意破坏应用的设计,以下是应用开发者经常犯的6个错误. 在app设计过程中,开发者会犯很多破坏设计的错误,不过以下是最明显的一部分,并且也很容易避免.深入理解设计规则和移动应用特性可以帮你打造更好的用户体验. 1.糟糕的app icon 通常情况下,用户对应用的第一印象来自于icon.当用户看到应用的icon时,他们经常会做这些猜想:它是安全的吗?我可以信任它吗?这款

开发者容易犯的六个致命错误

摘要:所有的应用程序创建者都对自己的应用寄予美好的愿望,但是很多错误是在他们无意识的状态下破坏app的设计,没有开发者或者设计师会故意破坏应用的设计,以下是应用开发者经常犯的6个错误. 在app设计过程中,开发者会犯很多破坏设计的错误,不过以下是最明显的一部分,并且也很容易避免.深入理解设计规则和移动应用特性可以帮你打造更好的用户体验. 1.糟糕的app icon 通常情况下,用户对应用的第一印象来自于icon.当用户看到应用的icon时,他们经常会做这些猜想:它是安全的吗?我可以信任它吗?这款

【转】十个JavaScript中易犯的小错误,你中了几枪?

在今天,JavaScript已经成为了网页编辑的核心.尤其是过去的几年,互联网见证了在SPA开发.图形处理.交互等方面大量JS库的出现. 如果初次打交道,很多人会觉得js很简单.确实,对于很多有经验的工程师,或者甚至是初学者而言,实现基本的js功能几乎毫无障碍.但是JS的真实功能却比很多人想象的要更加多样.复杂.JavaScript的许多细节规定会让你的网页出现很多意想不到的bug,搞懂这些bug,对于成为一位有经验的JS开发者很重要. 常见错误一:对于this关键词的不正确引用 我曾经听一位喜

Python程序员最常犯的十个错误

不管是在学习还是工作过程中,人都会犯错.虽然Python的语法简单.灵活,但也一样存在一些不小的坑,一不小心,初学者和资深Python程序员都有可能会栽跟头.本文是Toptal网站的程序员梳理的10大常见错误,非常有参考意义.大家在开发过程中需要格外注意.译文中如有理解错误的地方,可以在网站留言或通过微信公众号编程派回复. 常见错误1:错误地将表达式作为函数的默认参数 在Python中,我们可以为函数的某个参数设置默认值,使该参数成为可选参数.虽然这是一个很好的语言特性,但是当默认值是可变类型时

java继承会犯的小错误

注意事项:阅读本文前应该先了解java的继承.本文定位为已经继承基础知识. 一:试图覆盖私有方法 先上代码 1 public class Father { 2 3 private void print() { 4 System.out.println("private print"); 5 } 6 7 public static void main(String[] args) { 8 Father father = new Son(); 9 father.print(); 10 }

JavaScript中易犯的小错误-------常见错误七:原型继承问题

JavaScript中易犯的小错误-------常见错误七:原型继承问题 很大一部分的js开发者都不能完全掌握原型的继承问题.下面具一个例子来说明:BaseObject = function(name) {if(typeof name !== "undefined"){ this.name = name; }else{ this.name = 'default' } };这段代码看起来很简单.如果你有name值,则使用它.如果没有,则使用 ‘default’:var firstObj

这些年马云犯过的错误

过去十年,在中国商界里面,成就最大的一个企业家是马云.几乎凭借一已之力改变了中国电子商务的业态,中国当今的电子商务模式比如B2B.B2C和C2C,和日本.美国.韩国以及欧洲的完全不一样,并且现在中国电子商务的销售总额已经超过了美国.在这个意义上说,阿里巴巴这个创始人的成就是非常大的. 2014年有可能是马云年,阿里巴巴要在北美上市了,也是阿里巴巴成立15周年的重要转折点,马云也到了知天命之年. 天下最好的商业模式是国家模式.国家是什么?国家本质上来讲就是用一种暴力机器的方式来保护全体公民的权利.

关于JDBC学习过程中的注意事项(分享自己犯过的错误,写给初学JDBC的小伙伴的八条建议)

关于JDBC学习过程中的注意事项(分享自己犯过的错误,写给初学JDBC的小伙伴的八条建议) 前言:最近在学习JDBC,总结了几个小问题,特地分享给大家,让大家不要犯这样的错误,也希望大家养成学会总结的好习惯,由于本人水平有限如果有什么错误还请指出,好让我进行及时的更改. 一.注意事项 以下的出现的问题是按照我的学习进度进行排列的,可能这些问题很简单但是我还是犯了很多次,所以特地总结出来. (一) URL的时候经常少写冒号(:) 这虽然是一个小问题,但是很多人可能写的时候会不注意这一点,补充一下M