Sun-Li Beatteay studied Oceanography in college, but after bouncing between jobs as a research tech, a barista, and a firefighter, he was ready to start a new career in tech. After a nudge from his wife who works in tech and some research online, Sun-Li found Launch School, a year-long online software engineering school. Learn how to stay motivated when learning online, whether the longer curriculum was worth it, and how this Launch School grad skipped entry-level to land a software engineering job at DigitalOcean!
Tell me about your career and education background. What made you want to switch careers?
I graduated college with an Oceanography degree. There weren’t many jobs in oceanography so for three years after college, I did odd jobs trying to find something that I really enjoyed. I worked as a research lab tech, a barista, I volunteered with AmeriCorps for a year helping low-income families with taxes, and I was a firefighter.
I eventually met my girlfriend, now wife, who is in the tech industry and she introduced me to the field of software development. I had an interest in coding before college, so I met with developers through her, got introduced to the tech community, and realized that it wasn’t too late to break into the industry.
After AmeriCorps, I studied physical therapy for a year. I applied to graduate school but was rejected. That was when I thought, "Okay, I can either wait another year to try to apply to grad school again or I can try tech and see if I get better results.
Did you have any coding experience? How did your path lead to Launch School?
I did a bit of self-teaching prior to Launch School. My very first lines of code were written in January 2016. I took online courses from Lynda and Treehouse. My first project was building my wife's portfolio website. For three months, I worked on her website and I was very new to web development, so it took me a while. I then thought, "Maybe I have enough skills to do this, but I'm not sure self-teaching is the best route. I want to have more structure." So that's why I started researching learning alternatives.
I found Launch School after searching on Google, and using Quora and Reddit. I looked at different options – either getting a certificate, going back to get a CS degree or a coding bootcamp. I was pretty familiar with Course Report so I did a lot of research on the site and found Launch School there.
What made you choose Launch School over other coding bootcamps?
I did a lot of research. I realized, "Okay, a bootcamp’s direct purpose is for learning to code quickly and switching careers." I didn't go to a traditional bootcamp like Hack Reactor because of finances, as many were asking for $10,000 to $15,000 up front. I was working as a rehab technician at a physical therapy clinic at the time so I was not making much money, and didn't want to take out more loans. So I tried to find something where I could learn quickly in a program focused on career switching, but at the same time was affordable and more self-paced.
I was really drawn to Launch School because they had an “anti-marketing” campaign – "Don't do this program unless you're really focused. It's really hard. It's tough. It's going to challenge you. Don't do this if you're looking for a quick fix." It made me want to attend an elite program that would challenge me. If I was able to go through this, I would have the skill set needed to go into the software engineering job market.
I was also drawn to their approach to learning, which is mastery based, as opposed to the bootcamp model which attempted to cram through all of web development in a few weeks. I wanted an elite program at a reasonable cost, which didn't seem possible, but here was Launch School at that intersection. It was the perfect fit for me.
Describe your application and interview process at Launch School. How did you feel about that process?
Launch School doesn't have a traditional application process since it's not a traditional bootcamp. The first thing that they want you to do is their free prep courses which determines if the school is right for you. You learn about Launch School, and figure out if you want to continue with the paid courses or not. A book called "Mastery" is required reading before you start, which focuses on the mastery-based learning paradigm. The free prep courses are in themselves very good in terms of getting started, and that essentially is the admissions process. If you can get through that, then you can consider their courses.
Describe the curriculum at Launch School. When did you attend?
I started Launch School in August 2016. I quit my job in Seattle and moved to the East Coast with my wife. I studied at Launch School full-time and finished the Core Curriculum in July 2017.
Launch School has two almost completely different programs: Core Curriculum and Capstone. Launch School’s methodology is that different pedagogies are required for different phases of learning.
How was your learning experience? What were some of the highlights of the course?
The Core Curriculum has an assessment model where you can't continue until you pass an assessment. Launch School models the assessment like a real job interview because everyone needs to be prepared for the software developer job market. All the assessments are very job interview focused – they each usually have a written component and a live coding component, to demonstrate that you've been learning the material sufficiently.
You also have the mock live interviews, which, having gone through real job interviews just a couple months ago, I would say is a very accurate process. The Launch School team will ask you in-depth questions and have you solve different coding problems that challenge what you just learned in the course. I thought the entire Core Curriculum was great for getting each student ready to tackle the job market as a software engineer.
How was the interaction with other students? Did you work on projects together?
For the Core Curriculum, the majority of the projects I did were individual, but Launch School has a vibrant Slack channel. I was very active in the Slack community, so I made a good number of friends and I still love talking to them. Launch School's Core Curriculum is self-paced because you can only progress after passing an assessment, so there aren't any team-based projects in this phase.
For Capstone, it is more like a traditional bootcamp and all projects were team-based and there were intense and intimate discussions with others all day every day.
I loved answering questions posed in the Slack channel by students earlier in the program. Answering questions reaffirmed my learning by teaching others.
Describe your final Capstone Project at Launch School.
For the last two months of the Capstone Program, you're working on a project. The instructors really push the students to make something non-trivial. For my capstone project, I worked with a remote team of three people to build Conclave, a decentralized peer-to-peer collaborative text editor. You can think of it as Google Docs, but without a central third party server. Pretty much every person who's collaborating on a single document is connected directly to each other – it's all peer to peer. It was very technically challenging – we had to read white papers, open source code, and we did a lot of research on peer to peer systems, data structures, and conflicting operations. We were using Google Docs a lot while in the capstone program, so we thought maybe we could try to remove the third party server so whenever people communicate together they are in control of the data. Everyone was really impressed with the project.
What languages did you use to build Conclave?
How did you balance your time while learning online? Did you work or do an internship while studying?
It was a range, but during the Core Curriculum, I would try to work on Launch School between 30 to 40 hours a week full-time. Some weeks I might drag a little bit, and on some really productive weeks, I’d work more than 40 hours. It's up to you in terms of what's sustainable. Once you get to Capstone, however, it is mandatory full-time and is 50-60+ hours per week.
I did do a brief internship at a design studio for a couple of months while I was doing Launch School. While I did that I would spend more 20 to 40 hours studying. I was more than halfway through the Core Curriculum and wanted to try my chances at getting a job. It wasn't the most interesting position because I mainly took Photoshop files and Sketch files from the designers and then made interactive static websites with them. I was at first super excited about that position, but I quickly got jaded by it. After that experience, I wanted to double down on my learning from Launch School because I knew I could land a better role. And I did, a much better role.
Do you have any tips for staying motivated while learning to code online?
For me, one of the reasons I was so motivated was because there was no Plan B. Programming was my only option. I know people tend to hedge their bets and have a fallback. I didn't – I was fully committed.
Since I was studying by myself at home, there were some weeks where I got lonely. Whenever it got really tough, I’d reach out to the developer community and other engineers, which helped a lot. That's why I would be very active in the Launch School Slack channel and I would go to Meetups in New York to meet other other developers.
There are points where you just stop and you look back and think, "Wow, I've learned so much just in the past like few months." Taking a moment to stop and see how much you've learned can be really motivating to keep learning.
How did Launch School prepare you for job hunting and interviewing?
Launch School definitely helped me a lot, especially in New York, the job market is so competitive. The Capstone Program taught us a lot about data structures, algorithms, and systems design – all the things you see on typical interviews in New York. Whenever I walked into a room and saw a whiteboard, I would say to myself, "I got this."
I started applying to jobs in January 2018 and accepted my position at DigitalOcean on March 2018.
How did that Capstone Project help you with your job search?
My final project was probably the biggest determining factor when it came to me landing a job. One of the toughest aspects about going to the job market from a coding bootcamp or from a non-traditional background is you don't have much work experience. It's pretty tough because interviewers are thinking, “Can this person really work and do what we need them for?" Having that Capstone Project on my resume and having a demo that people can use, showed employers that I can do technically challenging projects. That Capstone Project was well worth participating in Launch School.
Also, the fact I built Conclave with a remote team was very helpful because experience working on a remote team is attractive to employers. At DigitalOcean, most of my team is working remotely.
How did you get your job at DigitalOcean? Did Launch School help with that introduction?
Landing my job at DigitalOcean was a lot of luck and effort. Once you finish Capstone, Launch School encourages you to do coffee meetings since the best way to get a job is through referrals. Being in New York I knew a lot of people who used DigitalOcean and really liked it, so DigitalOcean was my number one company I wanted to work for.
I had a mutual connection with an engineer at DigitalOcean who also does a podcast that I liked. I reached out to him for coffee and we had an awesome meeting where I showed him my Conclave project, and he showed me other projects he was working on. I was able to get a direct referral from him to DigitalOcean. But then, I didn't hear anything back after the referral.
I kept interviewing and got a couple of offers from other companies, so I emailed DigitalOcean’s recruiter to let them know that I had offers but I was still really interested in working there. They got back to me the next day and they scheduled my phone screen interviews immediately. After my phone screen, my (now) manager really liked me, so they brought me in for an onsite interview. The very next day I got an offer so it was very fast!
Congrats on the new job! What is your role and how large is your team?
DigitalOcean’s Storage pillar is broken up into two different teams – you have the storage back end, and then the storage front end or storage apps. I'm a software engineer on the storage apps team. We have four engineers, a project manager, and our engineering manager. We're pretty much all remote except for me in New York.
What's a typical day like for you on the job?
Now I’m working on a content delivery network (CDN) component. We're working on partnering with third-party companies to allow users who host their static content on our Spaces product to enable a CDN for faster retrieval. I'm working on the public API that will allow users to enable a CDN for their DigitalOcean storage.
How was the learning curve of acclimating to the team and being at a tech company like DigitalOcean?
I have grown so much. The ramping up period was very quick because our team is small. There are lots of tasks that get shared around, and everyone gets a chance to take a large bite of everything. I was able to work on a bunch of different tasks straight away because of my strength in fundamentals. One engineer took the first two weeks to onboard me, and if I had questions, he would pair with me and tell me the tips and tricks of DigitalOcean. He taught me the different idiosyncrasies of DigitalOcean’s architecture and it was really awesome. I felt that Launch School prepared me really well to absorb new material, and their philosophy of learning fundamentals very well really kicks in when you're in a work environment and have to learn new concepts quickly.
Would you have got to where you are today by continuing to self-teach? Would you have landed your new job without Launch School?
I would not be where I am today in the tech industry in the same amount of time if I had not done Launch School. It may have been possible to figure out a good structure for myself with self-teaching, but it definitely would’ve taken a lot longer, because I was learning everything at a surface level. It's very difficult to know what you should learn, to what depth, and for how long. Launch School addressed all those questions and in Capstone, even more questions around career and growth.
What has been your biggest challenge or roadblock in this journey to becoming a software developer?
The biggest issue that Launch School students usually face is the time issue, because bootcamps are quicker. Hack Reactor and App Academy take a matter of months, while at Launch School, because it’s self-paced, can take much longer. It's a tradeoff – in the tech industry, there's time, money, and then adequacy or effectiveness of training. You can have a really quick course but spend a lot of money and don’t get a thorough understanding of the fundamentals. That's why I chose to go with Launch School – you're trading off time because it's going to be a longer process.
By the time I finished Launch School, even though it was a little longer than a typical bootcamp, I felt that in the long-term my journey would be much faster because I understand the fundamentals. I have fewer mental gaps and can learn more advanced topics much faster. That extra year of studying was also worth it to me because I skipped the “entry-level” job at Digital Ocean and went straight into a Software Engineering job.
What advice do you have for people who are thinking about making a career change and considering an online coding bootcamp?
Go for it! Studying remotely will definitely be worth it if you put the time in, master your fundamentals, and work on being the best engineer you can be. It’s going to be tough and will require all the mental fortitude you can muster. However, it’s going to change your life for the better. It’s worth every second.