This year was the first time I was ever laid off from a company, and I figured I’d share my lessons learned from the experience. Maybe you’ll find them helpful if you ever find yourself in a similar situation or if you’re going through the same thing at the moment.
Lessons I learned from getting laid off from my Senior Software Engineering role:
- Instead of diving into job hunting immediately, take some time to rest beforehand. I dove into job hunting immediately, although I was still feeling devastated from being laid off from a company that had been a dream job for me. I was processing my grief over losing a job while also feeling extremely exhausted from staying up late studying for technicals and waking up early for my scheduled interviews. This made it difficult to perform at my best during those interviews.
- Don’t apply to too many places at once. Right after getting laid off, I panic-applied to a lot of companies. As a result, I had several companies responding to me at the same time to set up interviews. My calendar was crammed with interviews – recruiter calls, technicals, and take home assessments. I ended up feeling extremely overwhelmed and was spread too thin, and ultimately bombed too many interviews because I overextended myself. If I could go back and do things differently, I would have been more selective at the beginning of my job hunt. That way I wouldn’t have been so exhausted in the beginning.
- Filter the unsolicited advice you’re getting from others and focus on what makes sense for you and your situation. I had a lot of friends/family give me their take on how I should approach the job hunting process. At first, I was trying to listen to too many people at once, and as a result, I was not only overwhelmed from everything that was going on in my life, but I was also overwhelmed from all the advice I was getting. What works for one person may not work for you, and that’s totally okay. Do what makes sense for you and makes the job hunting process manageable for you. For me, this meant cutting back on the interviews I was scheduling each week. I know that people mean well when they give you unsolicited advice, but no one truly knows what you’re going through better than you do, and ultimately you know better about what works for you.
- Prioritize your mental health. Losing my source of income and my health insurance, processing the emotions from getting laid off, as well as dealing with the rejection that comes with the job hunting process, took a toll on my mental health. At first I was interviewing too much and not giving myself enough space to continue to pursue my hobbies or doing things that make me happy. Later, I realized I had to cut back on interviews so I could protect my happiness and mental health, and make time to do things that would bring me joy during this difficult time.
- Have a strategic approach for the companies/roles that you apply to. At first, I didn’t have a strategy other than to apply to any role that fit my skill set at companies I was familiar with/really liked. Later, I realized the interview process was very important to me since I’m primarily self-taught, and live coding/whiteboarding interviews have always been tough for me. I ended up applying to companies that had tech screens that catered to my strengths while spending some of my free time working on LeetCode problems and studying CS so that I could move back to live coding/whiteboarding interviews in the future.
- You can negotiate your severance. I had no idea you could negotiate your severance, so I just signed off on what was offered to me. If I could go back, I would have tried to negotiate, although the layoff my company did was one where there probably wasn’t much room for negotiation since so many people were laid off.
- Listen to your gut. When you no longer have a job, it’s easy to feel desperate and feel like you should accept the first offer you get. If you’re financially able to hold off on doing that, I’d recommend waiting until you get an offer that excites you. I had a couple potential offers in the beginning of my search, but I wasn’t excited about them at all. And I think that’s definitely a red flag – you don’t want to start working for a company if off the bat you have some resentment about the offer.
- Network and use social media to your advantage. I was able to get a lot of leads on possible job opportunities by reaching out to people who used to work at my previous companies. I was also getting a lot of help from strangers reaching out to me when I posted about getting laid off on LinkedIn.
Hopefully this is helpful for anyone else going through something similar. If you recently found a new job, congrats! If you’re still on the search for something new, good luck and hang in there!
Finding a remote job ended up requiring quite a bit of persistence on my part. Before looking for a fully remote job, I had no idea how competitive remote jobs are. What really helped me land quite a few interviews, some of which were with some pretty large companies, was the fact that I have a pretty big online presence. I not only blog on my web developer portfolio site, but I have created an online presence for my artwork. I was competing with a lot of applicants who have more of a Computer Science background, but I think my online presence helped me stick out.
When I was applying to various roles, I kept combing the following job boards/online services:
- FlexJobs – this is a paid service, although if you’re unhappy with your subscription in any way, they’ll give you a refund
- Hiring without Whiteboards – this repo includes companies that have remote roles
- We Work Remotely (this one was my favorite, and is actually where I found the company where I landed a remote role)
It also helped that I have had previous experience working remotely for companies and contracting work, so I’m familiar with the various ways of communicating with colleagues in different cities. Many companies with remote employees are interested in if applicants have had previous experience working remotely, so they know if candidates are able to work remotely on their own. After all, remote work isn’t for everyone, and it’s a matter of trying it out to determine if it’s the type of environment you can thrive in.
It’s hard to believe, but exactly two years ago I took leave from my company to attend General Assembly’s Web Development Immersive (WDI) program. Previously, I had hopped around with different web-related roles, learning coding on my own and picking up on best practices along the way. Since I didn’t have a background in Computer Science, I really wanted to get a better foundation, thus I decided to attend a coding bootcamp.
What was Great about General Assembly
WDI was an amazing experience in many ways. I’d have a say that I really appreciated the following:
- Meeting a wonderful group of aspiring developers that came from all different backgrounds.
- Being a part of an amazing community, and feeling much more confident about my abilities as a coder.
- Having hands-on experience by building applications for labs, as well as creating four different projects (although I have to say I wasn’t proud of one of my projects, so it was more like having three different polished projects).
- Getting introduced to new frameworks like Angular JS and popular libraries like React JS.
- Having many “ah ha!” moments, where things would click and I realized that I had a much better understanding for different programming concepts and patterns.
- Getting the tools I needed to become a better learner.
- Feeling passionate again about technology and web development – prior to joining their program, I was feeling burned out at work. WDI helped motivate and inspire me again.
What Could Have Been Better
- I wasn’t thrilled with their Outcomes programming. I enjoyed the panels they had and an interview workshop, but overall I felt like too much time was spent away from working on projects while focusing on things like resumes and cover letters (which I felt like I already knew enough about). I’d say it would have been better if there was less mandatory Outcomes programming, with the option to participate in some of their activities.
- Technical interview prep would have been nice. We barely scratched the surface when it came to technical interviews, and I didn’t feel at all prepared for technical interviews once I started interviewing for developer jobs.
- Better communication about how difficult it is to land a dev job earlier in your career. It felt like they kept saying it was easy if you worked hard enough, which is a bit vague and not terribly helpful.
Overall, I thought General Assembly’s WDI was an amazing experience, and I definitely don’t regret it. Was it perfect? No, but it helped me in just the right ways. I enjoyed the people I met and the community that I was a part of. I kept referring to it as being like camp for grownups. It was a lot of fun, was incredibly challenging at times, but was well worth it.
I had a chance to sit-in on a Scrum meeting at National Geographic, which was a pretty insightful experience. As someone who is coming from a background in working for nonprofits, it was great to get to see the planning phase that other companies go through.
Afterwards, we worked with Angular once more, although this time we combined our knowledge of Angular with API calls, putting together our first Angular CRUD application. It’s going to take a little while to get used to the format for Angular applications, with controllers and views, but I’m determined to ‘get it.’
We played around with Sinatra, which is a framework for quickly creating web applications in Ruby. Other ways include Rails, Express/Node.js, and Django. We reviewed how to set up routing, which tells the application what the URLs should be for different pages. You can also pass variables into the URLs for more dynamic URLs.
There’s different ways of working with data on the server, which include:
- GET – for ‘getting’ info (no data is changed)
- POST – for ‘creating’ new data (usually by submitting a form)
- PUT – for ‘updating’ existing data (usually by submitting a form)
- DELETE – for ‘deleting’ data
To create views in Sinatra, you let it know which pages you want to route to with erb files, which are files that include a mixture of HTML and Ruby code. You even can share variables in different views.
Later in the day we met with Outcomes where we had someone come in to speak to us about networking on Linkedin. We also worked on our brand statements and then did an exercise where everyone went around the room and said what the good qualities were of our different classmates. Here’s what everyone had to say about me:
- good eye for design
- picks up things quickly
- understands development
- ahead of the game
- quick learner
- quickly dissect a problem
- a leader
This week has been utterly exhausting! I started the day off tackling Hangman and was pretty proud of the progress I made. I was pretty ambitious and wanted to finish everything today, however, that’s somewhat ridiculous since I already completed one of the other projects for project one. Nevertheless, I did manage to get most the of logic coded. The main problem I ran into was figuring out how to get the masked word to show up, letter by letter, based on what the user guessed.
I’m excited to figure out drawing the frames of the Hangman as well, and figuring out the logic for how many guesses the user has until it’s a game over. Although I wasn’t able to complete the project today, I’m hoping to make some progress either tomorrow night or Friday. Interestingly enough, even though the day was filled with a lot of frustration, I was pretty proud of the small wins I achieved on my own, even when they were when I figured out what was wrong in the code and didn’t necessarily have an answer just yet.
Tomorrow we’re presenting our projects, so I plan to present my flash card application, and plan to also show off the canvas drawing element that I just got started with for Hangman.
This afternoon was a lot of fun since we met with the Outcomes team and had a career coach run a workshop with us where we did a couple of exercises to help us write our brand statement for who we are all about when it comes to being an employee. We broke off into groups where one of us pretended to be the interviewer, the other was the interviewee, and the third was the scribe who wrote down any words and phrases that described the qualities of the interviewee based on his/her responses to the interviewer. It was a fun exercise and I really enjoyed hearing more about my classmates’ stories.
The big takeaway was, when in doubt, console.log it! Or Google it…
In the afternoon we met with the Outcomes team who had a panel of GA graduates talk to us about their experience in the program. It sounds like there is definitely a struggle in the program – a lot of frustration when you’re beginning to learn complex problems – but ultimately, if you keep at it, things will click and make sense to you.
Today was yet another review day for me, yet I still had several fun takeaways, not to mention that they had a panel that spoke to us about the tech industry in the DC area. It was great hearing about useful Ruby Meetups like the ones in Silver Spring and Arlington. Also, I liked hearing about how it’s useful to take your previous, unrelated work experience and find a way to spin those skills into something that’s a great asset to your work as a web developer. The book, “The Passionate Programmer,” was also recommended which is something I’ve heard about before and now will definitely read.
With our CSS lesson, I learned a lot more about flexbox which is something I need to fiddle with more. Previously, I had heard of it but had never used it, simply because my work usually involved making sure older browsers could support my CSS styles. Flexbox is a fun way to create clean layouts and center elements. The lesson also reminded me that box sizing is a great thing to use since it makes it so I don’t have to worry about all the math and calculations involved with padding and margins.
Some helpful resources related to the CSS work included:
Today was the first day of class, and I was definitely feeling a bit nervous and giddy. I’ve never done something like this before, taking leave from my company just to delve head-on into learning something.
For the most part the day was filled with team building exercises and getting to know my classmates. The instructors reviewed the format of the course and how GA works. It was all the usual introductory type of day.
The coursework dealt with the command line interface (CLI) and a few of the commands that would really come in handy throughout the duration of the course. This included the following:
ls // list directory contents
cd // current directory
touch // create a file
mkdir // create a directory
cp // copy files
pwd // print working directory
I haven’t had a chance to really jump into navigating the terminal, so even though today was more of a review day for me, I still had a few take aways that will come in handy in the future.
It was a tough decision, but after toying at the idea of going through GA’s Web Development Immersive (WDI) program, I finally decided to take the leap and will begin the program at the end of June. The decision involved a lot of weighing the pros and cons.
- It can help me become a full-stack web developer. I’ve felt like I’ve been in a rut with my coding. I’ve worked for a handful of nonprofits over the years in a variety of web roles, and taught myself how to code with CSS and HTML, however I’ve felt stuck when it comes to moving into other areas of coding. WDI looks as though it can help give me more direction when it comes to advancing my skill set.
- Structured learning. I’ve attempted to teach myself programming via online courses like Code School or Free Code Camp. Although when it comes down to it, it’s difficult to take the concepts taught and actually apply them to making something. WDI will force me to start building things, with the help of instructors that I can pester with questions.
- Code reviews. At every organization I’ve worked for I’ve always been the only person who really does what I do. Which can be great in many regards, but at the same time, it makes it difficult to know if I’m ever coding things inefficiently. It will be super helpful having these reviews as I explore more advanced topics.
- Networking. This year I finally started going to tech meet-ups for groups like DC Women Who Code. I haven’t been the greatest at “getting out there” with networking, and GA’s events and programming for WDI sound like they’ll be perfect for this.
- Community. Everyone I’ve spoken to who has already gone through the program speaks highly of the GA community and the friends they’ve made there. I’m excited to begin the immersive course with like-minded individuals.
- Price. The price tag is a lot, although I was initially saving up for grad school which would have been far more. So when comparing GA to the alternative, of degree programs, it is much cheaper and not as much of a time commitment.
- Will it actually be useful? I did quite a bit of research on the program before enrolling, but there’s always the fear that it might not pay off in the end. From what I’ve heard, it sounds like you’ll get more out of it if you’re willing to really put in the time. And I’m definitely ready to put in the time.
Anyway, I decided to put together this blog as a way to track my progress and reflect on the program as I go through it. So stay tuned, there will be more to come.