The job search… the big question mark at the end of every coding bootcamp.
“Will I really be able to get a job after this?”
“What does that 97% hiring rate that Fullstack Academy advertises really mean?”
My job search was postponed when I became a teaching fellow, so I was able to watch some of my former classmates go through it from a distance. Some of them were lucky and landed dream jobs within a few weeks. Others, the majority, I think, seemed to struggle more. The anticipation built.
I told myself that I would start my own job search on January 1st. This would give me 6 weeks before the end of my fellowship (and looming last paycheck). I procrastinated. I submitted my first job application on January 3rd. I received my first job offer on January 27th, and my second offer on February 1st. I accepted an offer on February 2nd. The whole thing was over and done with in less than a month.
This was, obviously, a favorable outcome. Do I know what I did to make this happen? No. I must have done something right, but other things I almost certainly did wrong. Here’s a bulleted list (yay!) of facts about my job search. I think it serves as a nice contrast to some rather frantic posts I have read about the post-bootcamp job search, although I do not propose that any of these things are “lessons” or in any way indicative of what is typical or will work.
- I applied to a total of 10 jobs. I found all of them through online job postings. This is not recommended.
- The only two sites I used to find jobs to apply to were Angel List, which has a collection of job postings at start ups, and Tech Ladies, which is a community of women in tech that has a job board.
- The great thing about Angel List is that, once you fill out your profile, applying to jobs is very easy. You simply write a short message to the employer, no long cover letter. I did write personalized messages for all of my Angel List applications, but each one took only about 10 minutes.
- The great thing about Tech Ladies is that it provides contact information of someone at the company for each job post. This allows you to reach out directly to a real person after you send in your application. I got a pretty good response rate from my applications through Tech Ladies (3/4 of my applications through that site got responses).
- I played up my previous non-technical experience as a teacher A LOT. I genuinely learned a lot of valuable lessons from teaching, and I know that I have more to offer because of it, even if the “hard skills” are not the same.
- I made a portfolio site and linked to it in all of my emails with employers. I used an html5up template for my site, because I wanted it to look very clean and professional (and be mobile responsive), and I didn’t have a lot of time.
- I keep a blog, which a lot of employers mentioned (too meta?)
- I didn’t go to any meetups (not recommended).
- I limited my search to smaller companies, since I hate bureaucracy.
- I sent thank you emails after literally every conceivable interaction.
- In the company at which I accepted an offer, I tried actually sending thank you emails to every person I talked to during my onsite (I talked to 4 or 5 people within the company). I didn’t actually have everyone’s email addresses, so I sort of creepily guessed their emails until I found something that went through. I wasn’t sure if that would work out, but apparently it did.
- I wrote new, personalized cover letters for each company I applied to.
- I applied to jobs even if they said they wanted several years of experience.
- The position that I accepted said it required 3 years of experience. LOL.
- I had my cute story about how I became a developer down.
- Something like: I took my first comp sci class in college, and I really liked it, but I didn’t become a major. When I graduated, I started teaching math, and I was teaching myself to code on the side. I started to spend more and more time on it, until eventually I found myself sneakily coding in the teachers lounge when I was supposed to be doing my real job. And I realized that, if this was what I wanted to be doing at work, I should just make it my real job.
In any case, today is my second to last day of work at Grace Hopper, and I start my next job next Wednesday. I am very excited to get started!
I can’t believe it, but the students are currently in their final week of Junior phase. This past 6-week session has felt quicker than any so far.
When I was a student, we spent the last week and a half of the program learning Angular.js, and, as avid readers might remember, I was very fond of it. But technology changes quickly, and Fullstack/Grace Hopper has already updated the curriculum to teach React.js instead of Angular. This means I have been learning a brand new technology, and then pretending I know enough about it to help other people learn it a few hours later.
React has been a bit of a tough sell for me. One thing I really like about Angular is the emphasis on separating concerns. The problem with this is that, in a large scale app, things can become very disorganized. The codebase of Learndot, the website used by Fullstack students, is an excellent example of this. Usually everything works, but when there is a bug it can be very difficult to track down. I have read that Angular is easy to write but hard to maintain for this very reason.
I am surprised, however, how much React seems to solve this problem by taking the exact opposite approach. At least in the workshop that the students have been working on this past week, there is a great deal of shared information between disparate apps. While this makes things clearer, to an extent, I can also imagine this structure getting out of hand in a large-scale application.
I am still very much in the process of learning React, and maybe I will be sold once I have a better sense of typical application structures. But, as of now, my opinion is that one can write clear and maintainable code using either React or Angular. One can also write terrible code using either framework.
One of the highlights of my week was being a team leader for this round of the tessel hackathon, helping to bring in another victory for Grace Hopper.
The project, called Stop, Teaf! is designed to help to protect the user against the rampant herbal tea theft in the Grace Hopper kitchen. Simply slip a discrete tessel into one of your tea bags, and the accelerometer module will sense a thief trying to snatch it. This sets off an alarm on your computer, and you will receive a command line prompt, into which you can type a stern message to the thief. Back in the kitchen, the tessel’s audio module will then robotically shout this message to the thief using text-to-speech technology. And if that’s not enough to scare them, there is also a little flag waving that says “Stop, thief!”
This time I wasn’t doing any of the coding or planning (although the result had some things in common with my first tessel project). Instead, I spent my time running around trying to help my team of four debug and refine the plan to fit the time constraints. We ultimately got the project fully functional about 5 minutes after the judges came by, but nonetheless we took home the “Best Campus Solution” award.
For the past week and a half I have been working as a teaching fellow at Grace Hopper. The transition from being a student to an employee has been pretty smooth. Maybe it’s my teaching background, but it seems perfectly natural that, after devoting three intensive months to learning to code, I should spend another three months helping a new group of students do the same (while continuing to learn myself).
As a teaching fellow, I spend about two to three hours per day helping students with their workshops. This is a very engaging mixture of fun and stressful, since the current group of students is extremely talented. Several of them have studied computer science, and others have work experience in related fields. There are also a number of students who, like myself, have no formal background before Grace Hopper, but on the whole this group is very capable. So far, I haven’t felt like there were questions that I couldn’t answer, but as it definitely keeps me on my toes.
I also spend a good chunk of time each day going over the next workshop that I will be covering. This is something that I always wished that my own TAs had done when I was a student, since it’s difficult to jump in and debug code when you don’t know the context. There isn’t explicitly time allotted to this, but I think it’s essential to doing my job well and helping the students as much as possible.
Another aspect of my job is engineering for Learndot, the website that students and instructors at Grace Hopper and Fullstack use. My first task was writing tests for some methods that had already been written. This was pretty challenging, because the methods were for MongoDB and JSData, neither of which I have any prior experience with. I needed quite a bit of help to get started, but yesterday I finally got my work merged into the master branch, which felt amazing. My second task has been entirely Angular, which, as readers of this blog know, I love. It’s been going much more smoothly.
The final aspect of my job is interviewing candidates to be future students. I am currently still in training for that, and probably can’t talk much about it, but it is something that really excites me.
That’s all for now! Happy election day (let’s hope) and thanks for reading!!
So, yesterday was my official graduation from Grace Hopper. However, since I am staying for an additional three months as a fellow, it didn’t feel like much of an ending. I have already started learning React so that I will be able to help the new students with it (future cohorts are learning React instead of Angular), and it feels very much like, even though I have learned so much, there is still a great deal of new information ahead of me. I am excited that I will get to hear some old material described by new instructors, and particularly excited that I will be a part of the engineering team for the online learning platform that we use at Grace Hopper and Fullstack. I will continue to document my adventures here, possibly adding some new structure to the site.
The entire last week was taken up by rehearsing our presentations for hiring day. We made screencasts that walked through our final projects, and we practiced delivering out demos in front of each other 5 or 6 times. This was a bit painful but I thought that everyone’s presentation ended up being extremely polished as a result, and in general it helped us build the good habits of practicing presentations.
Speaking of presentations, here is a link to my tech talk from week 11!
My only excuse for not posting in two weeks is that these weeks have been by far the toughest, busiest, and most stressful weeks in Grace Hopper. I feel like I have been working nonstop and only now have time to take a breath. Here are some things that happened since I last wrote:
- We made Dish’d! In two short weeks, we converted this app from a wobbly lump of code that broke every time we touched it to a robust and usable application. If you tend to have trouble planning out your meals for the week, I suggest you try it out! It’s live at dishd.us (and if it seems to be down for a sec, try again later. I swear it’s worth it!!)
- My team also worked on and presented our application at the Angelhack “Lady Problems” hackathon. Even though we didn’t take home any prizes, it was a really great place to work and meet people all week. It’s very inspiring to work in a room full of mostly other female developers, and the venue at the AWS popup loft was beautiful! Plus, there was free food and several free t-shirts.
- I made a stop by Code Camp NYC, a conference at the Microsoft center where I saw a very helpful lecture on Angular 2.
- We also presented Dish’d at family and friends demo day. Thanks, mom, for coming to New York to see our presentation!!
- If that wasn’t enough, I also gave a tech talk on components in angular 1. This was for a 10 minute presentation that all Grace Hopper seniors are required to put together. I will post a video of it soon, for anyone who is interested in my take on that topic (anyone?).
- I applied for, and was accepted to, the Grace Hopper fellowship program! This means I will be staying on for the next three months as a teaching assistant, while also doing work on the website used by students at Grace Hopper and Fullstack Academy. I’m very excited for this opportunity to keep learning (and get paid for it this time). The adventure continues!!
It’s now the last week as a student in the program, and I can’t believe it! let’s do this!!
I accidentally published this on my other blog! Whoops. Here’s a recap of last week:
This week felt very different from the others, perhaps best characterized by the phrase “hurry up and wait.” There was a huge rush to get Grace shopper deployed by Wednesday morning, followed by a lull for the rest of the day while we waited for others to finish presenting and then took our final quiz of grace hopper (which, at this point, didn’t feel like a huge deal since we have been practicing all of our tools very intensely).