文档结构  
可译网翻译有奖活动正在进行中,查看详情 现在前往 注册?
原作者:John Sonmez (2016-10-26)    来源:Dzone [英文]
CY2    计算机    2016-10-29    0评/423阅
翻译进度:62%   参与翻译: 苏州小浮云 (9), learner (2)

本文是出自我即将发行的《完整的软件开发人员指南》书中的一章。 我在这个网站上每周都写书,如果你在这里输入你最常用的电子邮件,我会发给你本书之前的篇章让你补上,并且一旦有新的篇章出来我就会发给你。

一些我所知道的优秀软件开发人员在开启他们职业生涯时对软件开发没有任何兴趣。

这可能很难相信,但是有时候具有不同的背景(在一个完全无关的领域)的人进入软件开发领域是有巨大益处的。

第 1 段(可获 1.3 积分)

我不完全确定为什么会这样 (尽管我当然有些想法),但是我已经一次又一次的看到只有几年经验的开发人员却在其他领域拥有广博的知识,最终超越了有更多软件开发经验的程序员。

如果你正在思索成为一名开发人员,但是你已经在一个其他的与软件无关的领域,希望本章能给你鼓励,并提供一些如何最好的进行行业转变的一些想法。

切换职业生涯的益处

Mid Life Career Change

我要在这里讲的大多数都是我自己的猜测,因为我在软件开发领域开始我的职业生涯,随后转到我现在的角色,而不是转向一个毫不相关的领域。

第 2 段(可获 1.66 积分)

然而,正如我所说,我已经遇到过很多真正成功的软件开发人员,他们的职业生涯一开始在与软件开发完全不同的领域。我至少大概知道什么致使他们如此成功。

我所观察的那些从其他领域转向软件开发领域的那些人,他们通常得益于软件开发领域所罕见的人际技能以及软技能 

软件开发人员有时往往缺乏这些人际技能以及其他软技能,这不是秘密,但是我发现软件开发人员相当宝贵(很明显,因为我写了一本书教他们建立了完整的商业想法)。

第 3 段(可获 1.49 积分)

我发现那些由其他专业转变并发展而来的软技能在软件开发领域是非常有用的,而且可以使得拥有这些软技能的人领先于正常的学习曲线。这些技能使你有明显的优势,尤其是在那些对软技能和人际交往能力高度重视的领域。

我还发现成功的心态广泛适用于各种领域,如果一个人在某一个专业的行业有所成就,那么他们有机会在任何其所追求的行业获得成功。

第 4 段(可获 1.23 积分)

You’ll likely find this to be the case if you are currently in another field — even a very distantly related one — when beginning to make the transition.

Finally, I would say that the ability to think outside of the normal constraints that many software developers and highly technical people think within can be a huge advantage, as well.

There is a high tendency for what is called cargo cult programming, where programmers are likely to do things not because they work, but because other developers are doing them and they are seen as best practices. Having an outside perspective can give you the advantage of thinking in a way that is unclouded by preconceived notions and ideas that are a bit pervasive in the programming community.

第 5 段(可获 1.59 积分)

While brand new software developers without any experience in any vocation may also have this same perspective, they are often more susceptible to falling into the same traps because they lack the depth of experience and confidence in their own thinking that someone with more experience likely possesses.

Again, I don’t know the exact magic formula that seems to make software developers who started in a different background so successful, but those are a few of my ideas.

The Disadvantages

Job Disadvantages

I don’t want to paint an overly rosy picture of switching into software development from another field. It’s certainly not easy, and there are definite disadvantages. It’s also true that you are not guaranteed to be a stellar programmer just because you used to be a nurse.

第 6 段(可获 1.64 积分)

一个很大的弊处是许多转行的程序员需要面对大量复杂的编程人员必备知识。

你可以在大学甚至一些在岗培训学到许多领域知识,几个月后,你就能胜任工作了。

我不是说软件开发是唯一一个较难的领域,或者是说任何人不经过培训就能做其他职业。但是软件开发比其他普通职业要难的多。

的确,这么说会惹怒一些人,但这完全是事实。

第 7 段(可获 1.25 积分)

In fact, if you are having a difficult time accepting that statement, you might have a difficult time making the transition because you will likely not be prepared for all you need to learn.

So, it can definitely be a disadvantage to come into this field thinking it’s just like any other field or job that you can learn.

You will have to do a good deal of studying and intentional practice to become even mildly proficient in this field, which is part of the reason for writing this long volume.

Another major disadvantage is, obviously, time.

This can be overcome somewhat by the advantages I listed above, which can accelerate your learning curve, but you are still going to have to play some catch-up if you want to fill the holes in your knowledge caused by a lack of direct experience.

第 8 段(可获 1.79 积分)

即使在这个领域你只花了三年就可以和那些十年的软件开发者相比,但是在遇到许多状况和问题的时候(大多数情况下),缺乏经验可能会使一些事情解决起来更困难。

怎样去做

好了,现在你对将要面对的情况已经有了一些了解,让我们来聊一聊如何克服这些不利条件来尽可能的成功地在职业生涯中期过渡到软件开发行业。

许多人都做到了。我甚至收到过一些来自那些晚到五十岁才转行的软件开发者的邮件,所以这无疑是可行的。.

第 9 段(可获 1.6 积分)

Here’s how.

Transition at Your Current JobTransition At Your Current Job

It’s difficult to break into the field of software development. I’ve already spent a good deal of time in previous chapters talking about how to get your first job because it definitely isn’t easy. No one really wants to hire a software developer without prior programming experience.

How, then, do you get that job if your resume says you’ve been an accountant for the last 20 years? Well, one way is to start transitioning into software development from your current job.

Many software developers I know started out in a completely different field and found that they could learn a little programming here and there to help them with their work or to build some kind of tool that would help everyone at their work.

第 10 段(可获 1.71 积分)

If you are interested in becoming a software developer, you might want to look around in your current work environment and see if you can find places where you could start using your newfound skills.

This is a great way to transition into software development because if you start programming at your job — even if it’s just small projects — you can then put that on your resume.

You may even find that you can create a software development role for yourself within the company you are working for just by automating things or building tools that end up being valuable enough that your current employer will pay you to keep doing what you’re doing.

第 11 段(可获 1.45 积分)

Start by taking on some of these side projects at work during your own time and then perhaps ask for permission to start transitioning some of these activities into your full-time position.

If you can pull this one off, you may not even need to go out and apply for a programming job. Once you are officially programming at work, you can always find another programming job somewhere else.

Look for a Way to Use Your Existing Background

Another tactic I’ve seen successfully employed is to use your existing background in an unrelated field to give you valuable domain expertise at a software development company who develops software for that unrelated field.

第 12 段(可获 1.41 积分)

举个例子,假设你有着20年的护士经验,你想进入软件开发行业。

是的,你可以学习编程,然后申请任何软件开发工作。

不过,去寻找主要致力于医疗保健行业的软件开发公司,甚至是需要软件开发人员的医疗保健公司。  申请这类职位,你将比其他缺少行业知识的申请者有独特的优势。

第 13 段(可获 1.18 积分)

在软件开发中,领域的专业知识可以是非常有价值的,因为在一个特定行业了解软件产品的缘由和目的可以防止产生许多错误。

软件开发公司要雇佣一个有着十年软件开发经验的人可能容易的多,但是了解软件开发并且有着10年甚至更多年领域知识的人将很难找到。

我曾经和一位有着遗传学背景以及最终在甲骨文公司找到工作的开发人员交谈过。他以前的职业是在遗传和生物化学领域,而甲骨文公司寻找的程序员是开发他们正在创造的一个产品,涉及遗传研究以帮助癌症治疗中心。

第 14 段(可获 1.58 积分)

试图运用你已有的、看似与软件毫无关联的经验寻找一份与之相关联的经验工作。几乎任何人可以做到,因为软件几乎存在于每一个主要行业。

愿意从头开始

Start At The Bottom

最后,我想说如果你在职业发展中期,想转到软件领域工作,你需要从底层开始工作,你以往的工作经验会确保你不会长期在那个职位。

做出从高薪的工作(有资历、有声誉)到低收入工作的转变是很难的。但是如果你想改变你的职业生涯,你必须要愿意这么做——至少短期是这样的。

第 15 段(可获 1.61 积分)

软件开发领域有比其他行业更多的精英,所以你有多少经验或者你或者你认识谁比起你能做什么都不是那么重要(虽然声誉很明显起了一个很重要的作用)。

我建议你计划好从底层开始,你应当意识到大部分技能你都不具备,所以从底层开始是比较好的、

如果你期望横向过渡到这领域,这将帮助你避免可能面对的挫折。

正如我所说,如果你已经在另一领域很有经验并且已经取得成功,你所学到的很多软技能将很有可能加速你进入软件开发的行列。

你只需耐心等待开始。

第 16 段(可获 1.74 积分)

文章评论