客户旅程_从编码训练营到报价—我的1280小时旅程

客户旅程

So, why am I writing this? My goal is to give some insight into the time commitment required to land your first software development job. I hope to achieve this goal by sharing my unique experience so that others may learn from it. Going in, I had an idea of what I’d do during the bootcamp but, I didn’t know what to expect after graduation. I hope you will be better informed than I was after reading this article.

那么,我为什么要写这个? 我的目标是深入了解完成第一项软件开发工作所需的时间。 我希望通过分享我的独特经验来实现这个目标,以便其他人可以从中学到东西。 进去的时候,我对在训练营期间会做些什么有一个想法,但是,我不知道毕业后会发生什么。 希望您会比阅读本文后得到更多的信息。

Like 30,000+ others last year, I enrolled in a coding bootcamp. I wanted an in-classroom experience, and I wanted it ASAP. I ended up joining General Assembly’s Software Engineering Immersive program. 1200+ hours later, I accepted an offer for a production engineer role at Facebook.

去年的30,000多个其他人一样,我参加了编码训练营。 我想要一个课堂体验,我希望尽快。 我最终加入了大会的“沉浸式软件工程”计划。 1200多个小时后,我接受了Facebook的一名生产工程师职位的聘用。

A little background about myself. I graduated with a Bachelor’s degree in Advertising and was in the digital marketing space for 9 years before I decided to make a switch.

关于我自己的一些背景。 我毕业于广告学士学位,并在数字营销领域工作了9年,然后才决定转行。

Thinking back on the projects I worked on, my favorite part of any job was taking a deep dive into a problem with a small team. We’d do a bunch of research, try a few things, and come up with suggestions for developers to implement. But how did these developers turn a set of requirements into functional software? I wondered. That’s when I realized, I didn’t want to be a suggester — I wanted to be a creator.

回想我从事的项目,我最喜欢的工作是深入研究一个小团队的问题。 我们将进行大量研究,尝试一些尝试,并提出一些建议供开发人员实施。 但是这些开发人员如何将一组需求转变为功能性软件? 我想知道 那时我才意识到,我不想成为一个建议者-我想成为一个创造者。

After much thought, I decided on software engineering, where I could work in a small team to create solutions. On top of that, the industry has a projected 20% growth rate over the next 10 years — there’s definitely a continued demand. Compared to my previous role in digital marketing, I felt like there were more opportunities in software development.

经过深思熟虑,我决定进行软件工程,在那里我可以组成一个小组来创建解决方案。 最重要的是,该行业在未来10年的增长率预计为20% -肯定存在持续的需求。 与我以前在数字营销中的角色相比,我觉得软件开发方面有更多的机会。

So, coding bootcamp it was!

因此,对训练营进行编码就可以了!

Starting out, I only knew very basic HTML & CSS (comfortable enough to make edits, but not build anything from scratch). I had zero experience with any programming language and I also understood how to use simple commands in a command line interface (think MS-DOS, Linux, anything involving typing in commands instead of clicking on things).

一开始,我只知道非常基本HTML和CSS(足够舒适以进行编辑,但不能从头开始构建任何内容)。 我对任何编程语言都零经验,而且我也了解如何在命令行界面中使用简单命令(想想MS-DOS,Linux,任何涉及键入命令而不是单击内容的事情)。

Now, let’s get to how I went from just having some front end knowledge to signing an offer.

现在,让我们开始了解我如何从仅仅了解一些前端知识到签署要约。

TLDR: (The TLDR:)

The Actual Bootcamp: September 2019 to December 2019

实际训练营:2019年9月至2019年12月

Bootcamp — 660 hours (480 hours in class, 180 outside of class)

训练营-660小时(课堂上480小时,课堂外180小时)

Post Bootcamp: Self Study — February 2020 to May 2020

训练营后:自学— 2020年2月至2020年5月

Coding Challenges — 210 hours (180 hours solo, 30 hours with a partner)

编码挑战-210小时(独奏180小时,与伴侣共30小时)

E-Learning — 270 hours

电子学习— 270小时

Behavioral Interviews — 20 hours

行为面试— 20小时

Job Hunting — 120 hours (75 hours spent on applications, 45 hours spent on interviews, take-home projects)

找工作-120小时(75小时用于申请,45小时用于面试,实地项目)

细节 (Details)

The Actual Bootcamp

实际的训练营

Image for post
My amazing cohort — SEI5 — October 2019
我令人惊叹的队列-SEI5-2019年10月

Ah, what an experience. This was the fun part — our days were planned and we had a schedule to follow. We had other classmates to rely on, and the instructors were always ready to help.

啊,真是一次体验。 这是有趣的部分-我们的日子已经计划好了,我们有时间表要遵守。 我们还有其他同学可以依靠,导师随时准备提供帮助。

The bootcamp schedule was Monday to Friday from 9:00 am to 5:00 pm. To get the most out of the program, I also spent a few hours outside of class every day (including weekends) working on assignments, projects, or just studying. If there was ever a bonus or stretch goal provided, I either completed it or at least attempted it.

训练营的时间表是星期一至星期五,上午9:00至下午5:00。 为了充分利用该计划,我每天(包括周末)在课余时间都花一些时间从事作业,项目或只是学习。 如果提供了奖金或延期目标,我要么完成,要么至少尝试。

How did I come up with the 660 hours?

我是如何得出660小时的?

There are roughly 20 workdays a month after factoring in weekend and holidays. The program went for 3 months, so 60 workdays x 8 hours. That’s 480 hours spent in class. I also invested at least 2 hours a day over the 90 days outside of class skilling up. So that’s another 180 hours.

考虑到周末和节假日,每月大约有20个工作日。 该计划进行了3个月,因此需要60个工作日x 8个小时。 在课堂上花了480个小时。 在课堂技能训练之外的90天内,我每天至少投入2个小时。 这又是180个小时。

Post Bootcamp: Self Study

训练营后:自学

Image for post
After graduating coding bootcamp, the rest is up to you (and your backpack)!
编码训练营毕业后,其余的一切就由您(和您的背包)决定!

Well, what now? How should I spend my time? Do I just start applying for jobs? What should I work on? There are countless things you can do with your time after bootcamp. The following is my first-hand experience and what worked for me.

好吧,现在呢? 我应该如何度过时间? 我是否刚刚开始求职? 我应该怎么做? 训练营结束后,您可以做很多事情。 以下是我的第一手经验以及对我有用的方法。

Looking at the requirements for even entry-level software development positions, I realized I had a lot to learn even after bootcamp came to an end. Data structures and algorithms, whiteboarding exercises, technical interviews, and even non-technical interviews were all areas I needed to improve in. My approach was similar to anything I studied — do most of the legwork myself and try to reach a basic understanding of what I’m studying. Then, reach out to classmates to practice the new material and get feedback.

通过查看甚至入门级软件开发职位的要求,我意识到即使在Bootcamp结束后,我仍有很多东西要学习。 数据结构和算法,白板练习,技术面试甚至是非技术面试都是我需要改进的领域。我的方法与我研究的任何方法类似,我自己做了大部分工作,并试图对这些内容有一个基本的了解。我在学习 然后,与同学联系练习新材料并获得反馈。

Here’s an example of what a typical day looked like for me:

这是一个典型的一天对我而言的示例:

Image for post
Make sure you get some breaks in. Get plenty of sleep too!
确保您有一些休息时间。也要有充足的睡眠!

My weekdays and weekends started to blur into each other — my daily schedule was a variation of coding challenges in the morning, e-learning in the afternoon, and applications and continued e-learning at night.

我的工作日和周末开始变得模糊起来–我的日程安排是早上编码挑战的各种变化,下午是电子学习的问题,晚上是应用程序和继续的电子学习。

I was focused on one thing: finding a job in the software development world. Ahead of me was a daunting task but, I knew I wasn’t alone on this journey. There were many allies in the cohort that I could count on. I also had friends (new and old!) to practice with and loved ones to support me.

我专注于一件事:在软件开发界找到一份工作。 在我之前是艰巨的任务,但是,我知道我并不孤单。 我可以指望这个队列中有很多盟友。 我也有朋友(新老朋友!)和亲人一起练习来支持我。

Here’s how I spent my time:

这是我度过的时间:

E-LearningWatching videos and reading. My biggest weakness coming out of the bootcamp was not understanding data structures & algorithms (DS&A for short). 2 resources that helped me a lot were AppAcademy’s DS&A unit, and Colt Steele’s DS&A course on Udemy.

电子学习观看视频和阅读。 从训练营中我最大的弱点是不了解数据结构和算法(简称DS&A)。 AppAcademy的DS&A部门和Colt Steele的 Udemy 的DS&A课程对我大有帮助。

I also took full advantage of a free month that PluralSight offered and got access to some AWS and Google Cloud training programs. I’ll add an appendix at the bottom for the list of courses that helped me specifically for site reliability engineering.

我还充分利用了PluralSight提供的免费月份,并可以访问一些AWS和Google Cloud培训计划。 我将在课程列表的底部添加一个附录,这些附录专门为站点可靠性工程提供了帮助。

So about that 270 hours?

那么大约270小时?

That’s roughly 3 hours of videos/reading for 90 days. What exactly did I do in those 3 hours each day? It would sometimes take me 3 hours to get through 1 hour of content — I’d rewatch/reread parts that didn’t make sense. Every time I ran into something that didn't make sense, I’d make a note to either research it or look it up on the spot. I also took extra time to revise and summarize my notes each night.

90天左右的视频/阅读时间约为3个小时。 每天这3个小时我到底做了什么? 有时需要3个小时才能看完1个小时的内容-我会重新观看/重读没有意义的部分。 每次遇到不合理的事情时,我都会做笔记以供研究或当场查找。 我还每晚花费额外的时间来修改和总结我的笔记。

A few years ago, I read that teaching a topic is a great way to learn it. So, every time I learned a new topic, I would pretend that I was leading a presentation about that subject the next day. Before I can present any information to a group of people, I need to know it backward and forwards. The result of this usually was creating a cheat sheet about the new material. Going in with this mindset helped me deepen my understanding of new concepts.

几年前,我读到,教一个主题是学习该主题的好方法。 因此,每次我学习一个新主题时,我都会假装第二天要主持有关该主题的演示。 在向一群人展示任何信息之前,我需要前后了解它。 其结果通常是创建有关新材料的备忘单。 保持这种思维方式有助于我加深对新概念的理解。

Coding ChallengesHate it or love it, many employers still use this tool to measure your ability to solve problems. There are plenty of options out there for practicing coding challenges. I used both HackerRank (HR) & LeetCode (LC). The platform here matters less — just pick one and start.

çoding ChallengesHate它还是爱它,很多用人单位仍然可以使用这个工具来衡量你的解决问题的能力。 有很多选择可以解决编码挑战。 我同时使用了HackerRank(HR)和LeetCode(LC)。 这里的平台无关紧要-只需选择一个并开始。

Tip #1 My advice for beginners here — don’t spend more than 2–3 hours on any single problem.

提示#1我给初学者的建议-在任何一个问题上的花费都不要超过2-3小时。

Set a time limit for each coding problem, anywhere between 1–3 hours. Once you hit that cap, go ahead and look at the discussion or solution to understand how others approached the problem. Don’t waste your time reinventing the wheel. Why do I mention this? I wasted 3 days (a total of 8–9 hours) on my first coding challenge. I could have learned more if I had stopped at 2 hours and studied how others approached the same problem.

为每个编码问题设置一个时间限制,介于1-3小时之间。 达到上限后,继续查看讨论或解决方案,以了解其他人如何解决该问题。 不要浪费时间重新发明轮子。 我为什么要提这个? 在第一次编码挑战中,我浪费了3天的时间(总共8–9小时)。 如果我在2小时内停下来研究其他人如何解决相同的问题,我本可以学到更多。

I ended up spending more time on HR because of the gamification. HR will give you badges for completing a specific set of problems. I recommend doing the 30 Days of Code & 10 Days of JS. The “Explore” section on LC is also great.

由于游戏化,我最终花了更多时间在人力资源上。 人力资源部将为您提供完成特定问题的徽章。 我建议进行JS30天和 JS的10天LC“探索”部分也很棒。

Tip #2 Don’t do it alone

提示2:不要一个人做

See if there’s anyone in your cohort who wants to practice coding challenges. Check your network.

查看您的队列中是否有人想练习编码挑战。 检查您的网络。

Use Pramp! Pramp is a tool that will match you with a partner to practice technical and non-technical interviews. All you have to do with Pramp is pick a time slot that you’d be able to dedicate to practice a coding challenge. Then, Pramp will match you with a partner. Working through problems with others is an excellent way to practice for whiteboard exercises. Get used to pairing with another person and communicating while problem-solving.

使用Pramp ! Pramp是一种工具,可以与您的合作伙伴一起进行技术和非技术面试。 与Pramp所做的所有事情就是选择一个您可以专用于练习编码挑战的时隙。 然后,Pramp将与您的伙伴进行配对。 与他人一起解决问题是练习白板练习的绝佳方法。 在解决问题时习惯与他人配对并进行交流。

I made sure to schedule 2 practice sessions each week. Most of the time it was just a screen share and video chat. I got some great feedback about some of my mannerisms while working through coding challenges (avoiding sighing when I’d get stuck, don’t speak too fast).

我确保每周安排两次练习。 在大多数情况下,它只是屏幕共享和视频聊天。 在应对编码挑战时,我收到了一些有关自己的举止的很好的反馈(避免卡住时叹口气,说话不要太快)。

210 hours?

210小时?

Roughly 30 hours practicing coding challenges with another person (24 practice sessions over 12 weeks, an average of 1.5 hours each session). About 180 hours solo (about 2 hours a day for 90 days).

与他人练习编码挑战大约需要30个小时(在12周内进行24次练习,每节平均1.5个小时)。 大约180个小时的独奏(每天大约2个小时,共90天)。

Behavioral InterviewsI had done interviews before, so I thought this would be easy. When one of my friends asked if I wanted to practice, I gladly took up his offer. We did a mock non-technical interview and took turns playing interviewer and interviewee. I hadn’t tried this before, but I decided to record our session.

乙 ehavioral InterviewsI做了采访之前,所以我想这会很容易。 当我的一个朋友问我是否想练习时,我很高兴接受了他的提议。 我们进行了一次模拟的非技术面试,并轮流扮演了面试官和被采访人。 我以前没有尝试过,但是我决定录制我们的会议。

I listened to the recording for maybe all of 30 seconds and it was so cringeworthy I deleted it. My friend gave me some excellent constructive feedback and I definitely had a ton to improve on. One of my biggest issues was my elevator pitch to the common question, “So, tell me about yourself”. I thought I had a quick 60-second answer, but when I timed it, I was going past the 4-minute mark.

我收听了大约30秒钟的录音,这非常令人畏惧,因此我删除了它。 我的朋友给了我一些很好的建设性反馈,我肯定还有很多需要改进的地方。 我最大的问题之一是我对一个常见问题的回答:“所以,告诉我你自己”。 我以为我可以快速得到60秒的答案,但是当我计时的时候,我已经超过了4分钟。

Time spent?

所花费的时间?

About 20 hours of mock interviews over 12 sessions with 8 or 9 different people. Pramp, once again, is also a great way for practicing these interviews.

在8个或9个不同的人的12次会话中,进行了大约20个小时的模拟访谈。 再次,普拉姆(Pramp)也是进行这些采访的好方法。

The Job HuntFor tracking, I used a simple Google Sheet. I attached a screenshot below of my actual job tracking document:

在 Job HuntFor跟踪中,我使用了一个简单的Google表格。 我在下面附上了我的实际工作跟踪文档的屏幕截图:

Image for post
The red was for companies were “No”s. Anything else, I still had hope.
红色代表公司是“否”。 我还有希望。

Here’s a breakdown of how my job search process went:

以下是我的求职流程的分解:

Image for post

Take every opportunity you get. The offer that I ended up accepting was a lead that came from the career coaches at General Assembly. I also recommend tailoring your study efforts to the opportunity that you’re progressing furthest with.

抓住一切机会。 我最终接受的提议是来自大会职业教练的线索。 我还建议您根据学习的最大进度来调整学习努力。

How did I spend my time here?

我是如何在这里度过的?

I didn’t begin applying in earnest until my second month of self-study.

直到第二个月的自学之前,我才开始认真申请。

Roughly 75 hours spent filling out 90 applications. I don’t know how much time I spent browsing listings.

填写90个应用程序大约花费了75个小时。 我不知道我花了多少时间浏览列表。

Approximately 45 hours spent on calls/interviews and take-home projects.

在电话/面试和带回家的项目上花费了大约45个小时。

今天 (Today)

I started as a Production Engineer at Facebook on 8/17/2020 — I look forward to continued learning and growth. Hopefully, this article has been helpful for anyone that’s looking to get into their first software development role.

我于2020年8月17日开始在Facebook担任生产工程师-我期待继续学习和成长。 希望本文对那些想起他们的第一个软件开发角色的人有所帮助。

附录—站点可靠性角色面试准备 (Appendix — Site Reliability Roles Interview Prep)

Grokking the Systems Design Interview — Design Gurus — Educative LPI Linux Essentials Course (010–160) — David Clinton — PluralSightIntroduction to The Bash Shell on Mac OS and Linux — Reindert-Jan Ekker — PluralSightPatterns for Building Distributed Systems for The Enterprise — Michael Perry — PluralSightCloud DevOps Engineer NanoDegree — Udacity (Basic Systems Design/Networking Concepts)Google Cloud Courses — Coursera (Basic Systems Design/Networking Concepts)How Linux Works: What Every Superuser Should Know written by Brian WardSystems Design Videos on YouTube from abrar, Gaurav Sen, Clément Mihailescu, TechLead

进行系统设计面试 —设计大师— LPI Linux基础课程(010–160) — David Clinton — PluralSight Mac OS和Linux上的Bash Shell简介 — Reindert-Jan Ekker — 用于为企业构建分布式系统的 PluralSight 模式 — Michael Perry-PluralSight Cloud DevOps工程师NanoDegree -Udacity(基本系统设计/网络概念) Google Cloud课程 -Coursera(基本系统设计/网络概念) Linux的工作原理:Brian SuperdSystems编写的每个超级用户都应该知道的内容设计视频在YouTube上来自abrar ,Gaurav Sen,ClémentMihailescu,TechLead

谢谢 (Thanks)

I received a lot of support along the way and I have a lot of people to thank.

在此过程中,我获得了很多支持,我要感谢很多人。

My amazing bootcamp instructors: Kenny, Dalton, Allen, and Matt.

我出色的训练营导师:肯尼,道尔顿,艾伦和马特。

My classmates, job search comrades, and now friends — especially: Jack, Jeremy, Linh, Jay, Jun.

我的同学,求职同志,现在是朋友-特别是:杰克,杰里米,林恩,杰伊,君。

My senpais: Brian & Ken.

我的前辈:Brian&Ken。

Christina, Erin, Linh, Monica: for helping me improve this article (200+ edits/suggestions!)

克里斯蒂娜(Christina),艾琳(Erin),林恩(Linh),莫妮卡(Monica):为帮助我改善了这篇文章(200多项编辑/建议!)

Everyone else that checked in on me: every single one of you.

检查我的其他所有人:你们每个人。

My family for helping out in every way — especially my wife, Joyce, who soloed our two kids while I holed up at my computer for basically a year.

我的家人在各个方面都提供了帮助,尤其是我的妻子乔伊斯(Joyce),在我花了整整一年的时间才把我的两个孩子独奏时。

You: for reading through this whole thing. Feel free to reach out!

您:用于阅读整个内容。 随时与我们联系!

翻译自: https://levelup.gitconnected.com/from-coding-bootcamp-to-an-offer-my-1280-hour-journey-c53d584f8feb

客户旅程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值