CodeGym тесла

第 6 级

程序员之路

你已经升级了!- 1

我认识一个女孩,她经常问为什么程序员总是看起来很快乐。答案简单而令人费解:他们拥有自己喜欢的工作,并且能赚很多钱。

欢迎来到编程世界!

程序员可以赚很多钱

首先我来介绍一下程序员的薪水,程序员的薪水情况怎样,他们工作的最佳地点和最差地点如何。对于这些问题的看法众说纷纭,使得非程序员很难独自搞清楚究竟是怎么回事。

影响程序员收入的主要因素不是他们所拥有的技能,而是他们的工作地点。即使资历相同,一个程序员的报酬也可能是另一个程序员的 2 至 10 倍!

资历会相对保持稳定。例如,程序员的经验不会在一个月内增长一倍,因而期望获得双倍的报酬。但是,你很可能在一个月内改变工作地点,最终获得比以前高一倍的薪水。当然,我永远不会忘记自己的工资在短短两个月内翻了三倍,但这是另一个故事了。

现在,我们来讨论程序员工作的最佳地点。

以下三个因素最能影响公司向程序员支付薪水的多少:

1) 雇主是否为软件公司,即,主要产品为软件的公司

2) 公司专注于国际市场还是国内市场

3) 公司的所有者是外国公司还是国内公司。

在考虑开发软件要赚取多少报酬时,一定要注意潜在雇主的位置。例如,如果你住在德累斯顿,那么你开发软件获得的报酬可能比住在纽约的朋友低十倍。这种情况说明是上述因素在起作用。

实际数字

由于世界各地的薪水不同,因此我建议以拥有 5 年经验的高级 Java 开发人员的薪水作为起点,并将其称为“5 年最高”。下面所有数字都以此数额的百分比形式给出。以下是世界不同城市“5 年最高”薪水的示例:

城市 高级 Java 开发人员,5 年经验
旧金山(美国) 160000 美元
纽约(美国) 125000 美元
伦敦(英国) 120000 美元
柏林(德国) 110000 美元
基辅(乌克兰) 40000 美元
班加罗尔(印度) 31000 美元

下面显示了拥有 5 年经验的高级 Java 开发人员可能赚取的薪水(取决于他所工作的公司):

级别 薪水,“5 年最高”薪水的百分比 (%) 说明
1 5%-10% 在最低薪酬水平上,这些公司的主要产品或业务不属于 IT 范畴。它们是国有企业,通常专注于国内市场。例如,税务机构或其他国家机构的 IT 部门。
2 30% 低于平均水平 – 各种非政府机构的 IT 部门(例如银行等)。
3 50% 平均水平 – 软件开发公司。
4 80% 高于平均水平 – 与外国客户合作的软件开发公司。
5 100% 处于顶级水平 – 客户和所有者均为外国实体的软件开发公司。这种公司凤毛麟角。他们很少有职位空缺,因此通常很难找到这些工作。但是,它们确实会不时出现。
你已经升级了!- 2

这里面最奇怪的事情是什么?

在所有程序员当中,有一半人在为 1 级和 2 级公司工作。

你想知道内幕吗?

3 级和 4 级公司有数百个职位空缺。他们愿意提供更高的工资和通常更好的工作条件。

我知道有两个初级 Java 开发人员:其中一个人的薪水约为“5 年最高”薪水的 3%(在 1 级公司),另一个人的薪水为“5 年最高”薪水的 30%(4 级公司)。 为什么要少赚钱?

对优秀程序员的需求量超出了供给量,因此根本没有必要在薪水不高的公司做程序员工作!

结论 1:Java 开发人员(有某种经验)的平均薪水是“5 年最高”薪水的 40%-50%。

结论 2:如果你去 3/4 级公司而不是 1/2 级公司工作,那么 5 年的平均薪水大约是“5 年最高”薪水的 90%-110%。

如果你不断提升自己会怎么样?

另外,如果你通过不断投资编程教育来继续提升自己的编程技能,那么从今天开始,你的收入增长情况如下:

你已经升级了!- 3

计划

0-3 个月(学生)

你对编程知之甚少。也许你已经在高中和/或大学学习了一些编程知识,但是你的知识很肤浅。

你的任务 – 通过学习 Java 编程语言学会如何编程。

你的目标 – 在不低于 3 级的公司中找到初级 Java 开发人员的工作。

请记住,在计划的前三个月,你不会获得任何报酬。你只需专注于学习 Java。

另外还要记住,将来当你有了家庭,可能会背上很多债务,那时想改变职业将变得更加困难。如果发生这种情况,而你最终决定要纠正自己的错误,你将不得不节衣缩食一年来为你的职业转型提供财务支持。教训就是要避免犯愚蠢的职业错误。

3-15 个月(初级 Java 开发人员)

在你职业生涯的这一阶段,你应该做一名 Java 程序员。你对语言和编程技能的理解应该每天都在提高。但是现在还不能松懈。在你可以安于现状之前,还有很多知识需要学习。

你的任务 – 学习中级开发人员所需的技术。这些技术是什么?世界在不停地变化。我来给你一些忠告。查找一些在线发布的 Java 程序员职位空缺,并浏览职位要求。另外,我还建议你阅读布鲁斯·埃克尔的书‘Thinking in Java’(《Java 编程思想》)。

在作为初级 Java 开发人员工作的第一年,你的目标是成长为中级 Java 开发人员。没有人会说这是一件容易的事情,但是对于目标明确的人来说,这是可以实现的。它会立即将你的薪水提高到“5 年最高”薪水的 40%(旧金山和伦敦为 64000 美元,班加罗尔为 12000 美元)。

作为程序员工作的第 2 年(中级 Java 开发人员,级别 1)

在过去的一年中,你的工作表现不错,现在你已成为一名中级 Java 开发人员。你可以过上很好的生活,报酬为高级 Java 开发人员薪水的 50%。你在工作中会被分配一些重要的任务,并且你的经验在显著增长。你将在两或三年内成为一名高级 Java 开发人员。不用着急。无论如何,你的薪水也不会快速增长。

你的任务 – 学习设计模式并阅读迈克康奈尔的‘Code Complete’(《代码大全》)。提高代码质量,并培养自己的团队协作能力。你可能会给自己制定一条规则:每月读一本 IT 书。然后在四年内,你和同事的聪明程度将相差 50 本书。千万不要推迟这种学习,因为将来你很可能再也没有更多的空闲时间,尤其是当你组建家庭之后。

你的目标 – 选择几种你作为高级开发人员想要专门研究的技术。毕竟,你不能学习所有知识。在一个狭窄领域成为专家是个好主意。

你已经升级了!- 4

作为程序员工作的第 3 年(中级 Java 开发人员,级别 2)

你现在是一名经验丰富的中级开发人员,并且正在考虑成为一名高级开发人员。你心情愉悦又享有声望。你的薪水超过“5 年最高”薪水的 60%(班加罗尔为 18000 美元,基辅为 24000 美元,柏林为 66000 美元,纽约为 75000 美元)。从这一刻起,对你这样的专业人士的需求量将超过供给量。你始终能够在几天内找到工作,而且你的收入再也不大可能比现在少。前提当然是,你不做任何愚蠢的事情。

你的任务 – 继续学习你所选择的技术。继续努力工作,不是为了老板,而是为了你自己。要求参加涉及先进技术的项目,例如大数据。反正你每天都要在办公室度过八小时,因此,你不妨去多赚点钱,更重要的是,你还可以获得将来所需的宝贵经验。

你的目标 – 找到新工作。到处都有好人。在新公司,你将从事新的项目和技术。不要过早地把自己固定在办公桌上。如果你仍在 3 级公司工作,请开始考虑转到 4 级公司。至于 5 级公司,尽管看起来很有吸引力,但目前对你来说仍然遥不可及。

作为程序员工作的第 4 年(高级 Java 开发人员,级别 1)

你现在是一名高级开发人员。恭喜。也许,你觉得自己还配不上这个职位。但我仍要恭喜你。你现在能否配得上自己的职位并不重要。重要的是,你将来会配得上。

我想你会同意这一点:最好先找到一份好工作,然后不断成长以达到所需的水平,而不是反过来。

希望你没有忘记我的每月读一本书的建议!现在,所有学生都会羡慕你拥有的知识和技能。他们很可能会为此而祈祷。试想一下:你正在赚大钱,接近“5 年最高”薪水的 90%。你可能还很年轻。世界就在你的脚下。

你的任务 – 重新评估你所选择的技术。也许你需要改变自己的专业。世界不停改变,技术日新月异,而你在过去两年中获得了很多知识。现在所做的选择在未来几年内将始终伴随着你。你该选择自己最喜欢的技术了。

你的目标 – 选择你要进一步发展的领域。领域太多了,不胜枚举,但是你现在必须做出选择。今天的微小变化会在将来产生重大变化。

作为程序员工作的第 5 年(高级 Java 开发人员,级别 2)

你已经确定了自己的未来,并在努力实现自己的梦想。有了正确的专业,以及不断进取的愿望,很快你就会硕果累累。恭喜。我很兴奋,因为现在世界上又多了一个对自己的职业感到心满意足的人。

下面还有一条忠告:人们经常高估自己在一年内可以实现的目标,而低估五年内可以实现的目标。回想一下你生命中的上一个五年。确实如此,不是吗?

你的任务 – 不要做出愚蠢的决定。不要对自己的目标漫不经心。

你的目标 – 选择一个领域,然后勇往直前。你以为这就万事大吉了吗?还记得你从学校毕业的那一天吗?这不是终点,而仅仅是开始。

未来专业

你已经升级了!- 5

你可以成长为技术专家(顶端)、经理(底端)或专业/独立顾问(中端)。一切都取决于你的个人喜好。

程序员的职业

编程不同于其他职业。从事编程工作,你无需成为经理就可以赚很多钱。在很多情况下,高级程序员的收入要比老板高。你获得的经验越多,你与管理层之间的关系从“工人-经理”过渡到“超级明星-经纪人”的速度就越快。了解自身价值的程序员可以选择从事最有趣的项目或填补最有趣的职位空缺。让我们为实现这个梦想的所有程序员鼓掌!

一个人要想成为全球最紧缺的顶级程序员需要做什么?你需要在最新的热门技术领域拥有丰富的经验。如何做到这一点呢?坚持阅读。

你已经升级了!- 6

一旦你获得第一份程序员工作,就会发生两件事情,你甚至可能都没有意识到。

1.你将很快获得实际项目的工作经验。与五年的大学学习相比,作为程序员工作一年可以为你提供更多的相关知识和技能。在 IT 职位空缺中经常提到这种经验:“我们需要具有三年工作经验的 Java 程序员”。

2.每天学习八个小时的新技术,并会得到报酬。绝不能低估这件事情的重要性。有时,这些新技能非常有价值,以至于你可能通过免费工作甚至付费来获得它们。如果能够深思熟虑地选择项目,你将在职业的阶梯上不断攀升。

我应该如何选择?

如果你不知道将来会使用哪些技术,可以基于“我喜欢”和“我不喜欢”或“这个技术很流行”和“这个技术不流行”来进行选择。这种方法完全凭运气。因此,最好事先知道你的最终目标是什么。

程序员取得进步的途径有很多。我会提到其中的一些,并给出我的意见。但不要把我的话当作唯一的真理。我只是提供一种简化的表象,以便你更清楚地看到事情的本质。

做一名永久的程序员

如果你最喜欢做的事情是编写代码,那么你应该成为高级开发人员,接着是技术主管,然后是架构师。你也可以一直作为程序员工作 50 年。高级程序员和技术主管的薪水通常比其经理的薪水高。你不会有所损失。

成为经理。运气不错,你不是一般人。

你已经叛变了。开玩笑而已。如果你觉得自己具备良好的组织才能,那么这可能是你要走的道路:团队主管,然后是项目经理。这为你成为执行官提供了机会,另外如果你想创业的话,这也会对你有所帮助。你想走这条路,不是吗?

搭个便车。

你已经升级了!- 7

如果你拥有家庭和孩子,你可能正尝试在经济稳定的国家过上安静富足的生活。你可能正在考虑移居/移民到加拿大、美国、瑞士甚至澳大利亚。你拥有高超的技能和抢手的专业。你无需从头开始打拼,而是可以从薪水丰厚的高级 Java 开发人员做起。这还不错吧。

在有生之年环游世界(巴黎除外)。

假设你尚未组织家庭,并且很想旅游。自由职业很适合你。寻找客户,商议价格(每小时 20-50 美元),带上笔记本电脑,实现移动办公!你将赚到足够的钱去世界各地旅居。为什么不立即开始让梦想成真呢?

愚蠢的人会浪费掉自己的血汗钱。而聪明的人知道如何省钱。未来的程序员会投资自身和专业教育。IT 专家将拥有光明的未来!