成为软件工程师的11个步骤

尽管流行的神话,你可以成为一个没有大学学历的软件开发人员。

无论您是重新进入劳动力市场还是陷入自己不喜欢的职业生涯(行政管理,运营,银行业务等),都可以在您的掌握之中转变为软件开发人员的职业生涯。只要你愿意付出艰苦的努力。

据美国新闻 道,软件开发人员的年薪中位数为95,510美元,失业率为2.5%,是最赚钱的技术职业之一。此外,该行业提供高于平均水平的工作与生活平衡。

更重要的是,劳工统计局预计在2014 – 24年间将有17%的增长率。同时,所有职业的平均增长率为7%。这意味着186,600个职位空缺。

你猜怎么着?尽管前景乐观,机会充裕,但只有2.4%的大学毕业生学习计算机和信息科学。正如您在下面的图片中看到的那样,到2020年,与400,000名CS学生相比,将会有140万个计算机工作。

您可以看到:编程技巧可以为您的日常工作带来更多财务安全和灵活性。但是,如果没有坐过四年的CS课程,你如何获得这些技能?更重要的是,你如何着手这些按需付费和高薪职业?

这是个好消息:这完全有可能!我与Flatiron School的Learn-Verified团队合作,为您带来如何成为没有CS学位的软件工程师的11步指南。所以请继续阅读!

11 steps to becoming a software engineer *without* a CS degree

第一步:澄清你的最终目标(并承诺)在开始之前,请了解以下步骤对于那些寻找全职工作(我简称为FTJ)的人员来说是特定的软件工程师。他们不适合这样的人:第一次涉及代码不确定编码是否适合他们希望追求 页设计,用户体验,用户界面或任何其他设计相关的领域想要全职自由职业者希望能够开创自己的事业过渡到新的职业并不容易。但是当你想到最终的目的地时,当你遇到颠簸时,它会非常有帮助。一个水晶般清晰的目标看起来像这样:“我想在一家成熟的科技公司担任软件开发人员。”“我想在一个全新的初创公司工作,作为一名软件工程师,在我崇尚的行业中工作。”“我想在一个团队中建立一些东西,并且为此付出很高的代价。”无论你的梦想是什么,如果你想通过所有11个步骤,你必须致力于成为全职软件工程师的最终目标。

第二步:选择要学习的语言

刚开始的时候,很多人都停下来决定他们应该学习哪种语言(和框架)。 Ruby on Rails? Python和Django? MEAN堆栈?这么多的选择,很少的时间。

事情是这样的:一旦你很好地了解了特定的语言/堆栈,就不难过渡到新的语言/堆栈。这意味着当你成为一名软件工程师时,你想要关注的是理解编程基础。本质上,学习如何学习。

一旦你有了一个坚实的基础,你可以轻松地转换到新的语言,框架和技术。正如Flatiron School Avi Flombaum的共同创始人所说:“最重要的是你正在学习如何像开发人员那样思考。”

所有这一切都说,你应该专注于一种语言/框架的开始。

有这么多的语言,可能很难知道哪一个挑选。我建议花点时间了解不同的语言。本指南选择编程语言是一个很好的开始。

对于很多人来说,Ruby是一个很好的选择。

Ruby的可读性和高效性使其比其他一些语言更易于使用。它也是开源的,所以你可以免费获得大量的工具和其他开发者 区。也许最重要的是,它很灵活:这种语言被很多公司(Airbnb,GitHub,Hulu,Kickstarter等)所使用,并且为您以后分支出其他语言奠定了坚实的基础。

For many, Ruby is a great first programming language to learn.

第三步:前学习认证的学生Sarah Lichter说:“当我自己学习并做出这些决定时,我阅读了很多关于Ruby的文章,并且认为它友好,容易被选为第一语言,并且拥有一个伟大的 区所以学习Ruby似乎是一个很好的选择。“第3步:练习……并练习更多虽然你学到的堆栈并不重要,但重要的是边做边学。这意味着需要一些实时的时间来完善你的新工艺。你必须每个星期每天留出大量的时间来学习。经过10个小时的练习,您不能成为软件开发人员。这是不可能的。

有人说,要成为专家需要10000个小时。现在,您不需要10,000小时的练习来获得第一个软件开发人员的工作。但是你确实需要投入一些认真的时间。举一个例子,Flatiron学校的全栈 络开发学习课程总计大约600-800小时。大多数学生需要四个月到十个月的时间才能完成,取决于他们每周为该计划投入多少时间。第4步:使用真正的开发人员使用的工具尽管像Codecademy这样的免费资源非常棒,但您在使用它们时并不处于真实世界的环境中。相反,您直接在 络浏览器中输入内容,并根据测验或其他类型的交互式活动获得分数。

第四步:在现实世界中,你不会像这样工作。所以,你从一开始就想做的事情是建立真正的工程师如何构建。你想使用他们使用的工具。在这条道路上,这将使转型成为全职角色并加入团队变得更加容易。

但是,当你第一次出发时,很难建立真正的开发人员构建的方式,并使用真正的开发人员使用的工具。 (如果你像我一样,很难知道从哪里开始。)

When learning how to code, use tools real developers use

好消息是有些程序会教你如何使用这些工具,比如Flatiron School的在线程序Learn-Verified。Learn-Verified的课程建立在真实工程师每天使用的工具和流程的基础上,如:Git和GitHub在你的终端工作测试驱动开发小组项目/协作这将使您在进入实际工作岗位时能够更快地进行调整,而不是再掌握一个陡峭的学习曲线。

第五步:阅读其他人的代码

成为软件工程师的另一个重要方面是学习如何阅读其他人的代码。您可以通过浏览GitHub存储库并查看文档来完成此操作。

有时候,文档可能是错误的……但源代码永远不会存在。通过学习阅读代码,您将能够理解正在发生的事情以及程序的工作方式。 (这个技巧在调试时也很重要,因为你可以识别哪些代码不应该在那里。)

这通常是一种被忽视的技能,但它可以真正让你看到有经验的开发人员如何做事。不要只是粗略地浏览一下代码。深入研究,了解情况,绘制功能,最后,如果可以的话,重新创建它。这样,您就可以对现有程序进行逆向工程,帮助您更好地了解如何创建自己的程序。

6:找到一个 区

寻找一个可以学习的 区可以使你的软件工程师成功或失败 – 尤其是当你刚刚起步的时候。当你被一群志同道合的人所包围时,你有一个自动支持系统:当你被困住时可以呼叫的一组人,或者失去动力。 (这两种情况都可能发生在我们身上!)

面对面的小组存在,但很难与每个区域进行协调并且无法访问。但任何人都可以加入在线 区,他们也同样有帮助。

通过Learn-Verified学习时,您可以访问Slack组。这个小组允许学生聚在一起,通过视频聊天和专用Slack频道上的课程或主题进行工作。学生还可以与同学建立或加入其他在线学习小组。所有经验水平都可以参与;事实上,超过40%的问题是由另一名学生回答的。然而,这个小组也有经验丰富的开发者也会帮助你!

第7步:编制项目

不要只是阅读教程和观看视频 – 把你的技能投入使用。就像日常软件开发人员一样解决问题。当你这样做时,你不仅可以进一步学习,还可以向潜在的雇主证明你可以破解它。 (因为最终目标是找到一份工作,对!)

Learn to code tip: don’t just follow coding tutorials. Build real projects.

您可以单独构建项目,也可以与一个组构建。

在Learn-Verified结束时,您将有大量项目炫耀。您将在整个计划中建立3-5个应用程序,然后是一个顶点项目。他们不只是无聊的“填补空白”项目:你有选择建立你的兴趣。

另外,学习验证程序的设置方式,您可以在GitHub上执行所有操作。这是一个很好的基础,也是展示你可以为潜在雇主做什么的一种方式。

第8步:培养你的专业 络

当你学习如何编写代码,编译项目等时,你应该慢慢地,但肯定地培养你的专业 络。因为当谈到找到一份好工作时,它不仅仅是在 上申请工作(现在,这可能浪费时间)。

相反,你想建立一个强大的 络。对于初学者,依靠您现有的连接。根据Jobvite的调查,40%的新员工通过员工推荐进入,这是最常见的方式。

The best way to get a job as a software developer is by networking

除了攻读您的一级学位 络外,您还可以获得二级学位(朋友的朋友)的介绍。我们的目标是与那些你想工作的公司建立起非正式的咖啡会议,这些会议可以建立联系,有时还会带来真正的采访。

在没有共同的朋友的情况下建立新的关系的其他几种方式:

去见面

维护一个博客(这将给你曝光)

志愿者

在活动中发言

参与并为 区做出贡献,几乎不可避免地,机会将以您的方式出现。

在熨斗学校讨论

再次,学习认证课程涵盖了所有这些,从 络连接,发送冷电子邮件,维护编码博客等等。

另外,他们有一份工作保证,承诺帮助你找到工作。如果您在6个月内没有获得工作机会,他们会退款。基本上,他们把钱放在口中。

9:掌握你的面试要点

在开始与外地的同事和有影响力的人建立联系之后,就可以准备好适应这些工作。 (但是,如果你建立了牢固的联系 – 你可以完全跳过这一步!)

但在发出申请或要求直接推荐之前,您需要掌握三件事情:简历,求职信和在线状态。

即使在现代化的世界中,简历也是必要的。招聘经理仍然看着他们,以获得你的技能和经验的快照。同样,在线申请工作时需要求职信;他们是您获得某人关注并留下印象的机会。

这些是跨行业的基础知识。但除了简历和求职信外,还有你的在线业务需要考虑。这对于科技行业的任何人来说都是非常重要的,这是你应该随着时间的推移而建立和维护的。您的数字足迹很重要,因为招聘人员和招聘经理在邀请您参加面试前会看到您的姓名。

作为软件开发人员,您的在线业务由以下几件事组成:LinkedIn个人资料GitHub上推特个人 站(或投资组合 站)博客(可以是您的个人 站的补充)雇主会根据他们看到的内容检查这些信息并形成印象。所以请确保这些印象是好的!第10步:确定你的工作面试最后,还有面试本身。

大多数公司从筛选访谈开始,通常在 上在家进行。之后,接受电话采访。如果你通过了这两个,你就会进行现场面试。除了标准的“最大力量/弱点等等”问题之外,您还需要为技术和行为问题做好准备。您可能会被要求通过代码挑战来构建项目或工作,或者描述您过去如何处理困难的情况。

一本有用的资源可以参考“破解编码面试”一书。幸运的是,当您使用Learn-Verified时,您无需自行准备:您将可以访问全面的职业课程,以确保您的面试准备就绪。 (事实上,我帮助写了一些!)每位受过学习认证的学生都会接受模拟人力资源/行为面试,并提供反馈意见,帮助他们改进软技能,并提高人力资源专业人员现在的意识。此外,学生还会与开发人员进行模拟技术面试。最终,Flatiron School的Learn-Verified计划团队致力于为您提供工作。 (他们确实保证它!)但请记住,你得到了你所投入的东西。

11:接受工作机会

在您通过一系列面试并展示您的新技能后,获得优惠只是时间问题。是的,它可能是入门级,但你必须从某个地方开始!随着您不断学习和成长为一名开发人员,您将继续攀登职业阶梯,争取更大更好的职位。

所有这些声音都像是很多的作品,对吗?

简短的回答:是的。这并不容易,我可以保证你有时会感到沮丧。但它是绝对可行的。你甚至可以自己做到这一切。许多人只用辛勤的工作就能顺利转变成软件开发。

学习如何编码

对大多数人来说,无论是掌握技能还是寻找工作,自己学习都会让事情变得更加困难。

这就是为什么有帮助的原因。 Learn-Verified使您可以快速追踪您作为软件工程师的职业生涯。许多地方都有经过验证的测试课程,就像Learn-Verified一样。

但是Flatiron School的Learn.co计划真正与众不同的地方在于工作安排部分。他们在完成课程后6个月内为学生提供职业咨询和工作保证 – 或者退款。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年3月11日
下一篇 2018年3月11日

相关推荐