It’s time to reveal the elephant in the room:

I was laid off.

As soon as it happened, the first thought that went through my mind was, I can’t believe I have to start over AGAIN.

When leaving a job and knowing you still need a next one (aka: not yet ‘retired’), the biggest hurdle is starting from square one at a new place; from the dreaded interview process, to learning a new group of people and set of processes, to building up your reputation at another company. It takes a long time before you can feel safe and secure in yourself again.

I’ve mentioned before that I am a Software Engineer, which is not that uncommon in the FIRE community. Everyone knows interviewing can be a challenge, no matter what your field. And rejection can hurt. But I happen to believe the Software Engineering interview is one of the worst of them all.

I can describe it as trying to prepare for a final exam for a course that’s never held any classes. And that course just so happens to encompass multiple different subjects that may not even be closely related at all. Imagine going to sit for a Physics final, where they cover Astronomy, Biology, Chemistry, and Geology. Also the test will be given on a whiteboard in front of a panel of three professors, will last for 8 hours, where you will have to solve complex equations related to each subject. All this whilst remembering exact, specific terminology, and you will be meticulously judged for your every thought, movement, and for the efficiency and speed of your work.

That is the feeling of the Software Engineering interview.

Not only is it nerve-wracking, but it can be difficult to study for, and the preparation can take a huge quantity of time. It’s intriguing how the engineering interview morphed into this structure. Many people have already written about its pitfalls, and shared potential ideas for how it could be improved.

One of the curious aspects of being a Software Engineer is that there is no certification you need to obtain in order to get a job. You don’t even need a high school diploma, let alone a college education (although I still found it beneficial to have both). This is unlike, say, a Civil Engineer who after 4+ years of college has to also pass a rigorous test and take an oath to follow ethical practices before they can go to work making calculations, all in order to ensure the safety of the structures they work on. Conversely, any person can simply call themselves a fully qualified Software Engineer and go interview for that role.

Regarding the Software Engineering interview, I get the company’s perspective: you have to prove that you can do the work. There is no magic guarantee that you are as qualified as you say you are. In the Software Engineering world, no one takes your previous work experience that seriously. Your resume may get you in the door, but that’s about it. In this field, your skills aren’t verbatim until you’ve proved them.


Nailing it and still not getting the job

It can be frustrating interviewing for a Software Engineering role, where every company approaches the process a bit differently, but seemingly from a set of questionable criteria. They may put too much stake in one part of the interview, which can turn out to not actually prove whether you can do the job well or not.

For example, I’ve had the experience many-a-time where a company claimed they didn’t know exactly what they were looking for, that they wanted a “problem-solver” (which is actually a good thing), but then decided by the end of the interview, that they suddenly realized they really wanted in area expert in one small niche of the industry. Totally different than the job description they posted. I can’t know why this happens so often. It could be lack of interview expertise, or perhaps altruistic intentions to start, but resulting in a pragmatic realization at the end. It just sucks to be strung along, thinking you’re the exact right person for the job, only at the end of a rigorous charade to be turned away.

I’ve had both experiences where I’ve gone into an interview and 100% nailed it at every turn, dominated every wrench thrown at me, but was then told I wasn’t the right “fit”, even after how difficult it is to actually nail a programming interview with all the variables and unknowns; and I’ve had the experience where the interviewer(s) gets hung up on one particular thing that doesn’t hold much semblance to your background, or that is completely learnable on the job; but then holds that against you as the be-all-end-all criterion, and you don’t get hired.

I’m talking about all this, because since losing my job I knew this was something I’d be facing again, and so far it’s been as difficult as the last time I went through the process, if not more so, since my confidence has been further diminished since being laid off. I’ve been interviewing for my next role (future company #4), but keep hitting dead ends, going through multiple rounds of interviews that have all lead to nothing.

It’s so hard for me to write all this right now, because I just feel so discouraged. My self-esteem level is all the way to the floor. My heart keeps telling me it’s hopeless to do anything, why even bother. But rather than succumb to the negative narrative and delve into a torrent of vegging out on pointless youtube videos, I’m remembering to stay motivated and get out all my thoughts on this while they’re still fresh and swirling around in my head.

Being rejected at the end of a long and arduous interview process sucks. These are some lines I’ve heard (all verbatim):

“You did great in each round of the interview. You got everything totally right. You’re a great generalist, but we really need a specialist.”

“It’s not a good fit right now, but reapply when you have more experience!”

“We really want to have women engineers, but every one that’s ever applied has been way too junior.


The Woman Card

Not going on too much of a tangent…

I don’t know if you’ve noticed, but I’ve refrained from mentioning my gender pretty much at all on this blog up until this point; and yes, I am a cis-gendered woman. For most of my life, I haven’t seen or experienced much benefit from being identified as a woman, and I planned to hide behind the veil of anonymity that the internet so graciously provides. I also strongly believe that being any particular gender doesn’t in itself diminish your ideas, thoughts, or what you have to offer the world. Similar to how J.K. Rowling chose to use her initials rather than use her name “Joanne” to help market her books, I didn’t want to be seen as just a “woman’s finance blog,” and I wanted my content to be taken seriously by all genders of reader.

While men’s blogs still seem to draw both genders, I notice women-authored blogs tend to drive more of a female audience (purely from an anecdotal standpoint gathered from reading comments on female vs. male blogs). I can see where the appeal comes from in attracting those who are similar to you, represented as readership. This could be true for male-authored blogs as well more than I’ve noticed, but either way, I sincerely wanted to refrain from declaring my gender here as a way to exclude (or only selectively attract) anyone who might benefit from reading my content.

But it’s difficult to be open about the challenges and triumphs in my life that stem directly to me being of a particular gender.

At one point in my life, I thought about creating a blog based solely around what it’s like to be a female Software Engineer, and what my experiences have been. As much as I enjoy the actual work of writing software, I have plenty of painful stories to tell. I haven’t been completely 100% honest with all of you in that some of my motivation for “retiring early” comes from being burned out from the Software Engineering culture. There are already few women Software Engineers, and more and more of us choose to leave the field. There is already so much to that story, and much more that I could contribute to its narrative as well.

I just feel like this is something I’ve complained about so many times in my life, and I really debated discussing it here because I don’t want this to be “that kind of blog.” I want to create positive, uplifting content that inspires others in a life-enriching way; not just a soundboard for my personal struggles. But I decided to post about it for two reasons:

  1. The only way tough social issues will ever improve is if we acknowledge them and bring them to other’s attention
  2. It’s the truth about what’s happening to me, and I feel that as my readers, I owe it to you to be honest about the negatives, as well as the positives, in my real life

So in adding to what I’ve already outlined in Software Engineering interviews being difficult on their own, unconscious bias factors in to make the whole experience downright depressing. The crappiest thing about unconscious bias, is that it’s unconscious. This means that people don’t realize or accept that they have a bias, which makes it so hard to address or correct. It halts our progress as a society, discourages empathy, and invalidates the experience of those who are stigmatized. And the truth is, we all have unconscious bias, myself included. Perhaps not so much with this particular subject, but in other issues I’m sure I’m woefully ignorant to the social struggles around me; potentially under-playing an underrepresented group’s plight without realizing it.

And acknowledging that is important.

Referencing the famous phrase of Donald Rumsfeld, unconscious bias is one of the unknown unknowns. We’re not even aware that we don’t know about it. Even in this metaphor, unknown unknowns of unconscious biases are still the most hazardous type of scenario, because until we can bring them to light, they are impossible to fix.

Being a minority in my field, it’s so tricky to bring attention to cases of unconscious bias without being seen as trying to “play the woman card,” which is not what I want to do. I don’t want special treatment, I just want equal treatment, and it seems so hard to come by.

In the current environment, the options available to me are to either to be an absolute genius, 100% at the top of the field, or to just go for more junior positions that I’m way overqualified for. The first option is not only unfair, it is unnecessarily difficult, and all-consuming (and I have a life aside from just being a Software Engineer, something that is frankly not that encouraged). The second option also sucks because not only does it come with a significant paycut, it comes with being treated as “lesser” (read: stupider) every day, and having your voice overridden by your peers or by even those with LESS experience and expertise. This, I can testify, is so frustrating and draining, that it makes doing the job not even worth the self-esteem killer.

 So not wanting to move backwards or dedicate everything I have to being absolute genius, I just have to toil along with the unforgiving process.

And surprise surprise: remember that company which claimed it had never seen a quality female engineering candidate? They emailed me after the interview telling me that I too was too “junior” for the role. (A role that I had excelled in at several impressive companies, as well as coming with high recommendations).


Rejection and feeling like a failure

I’m clearly sharing some of my dissatisfaction through this article, but in real life I have a hard time admitting to friends that I’ve been interviewing and have been getting rejected.

Even if I realize bias was a factor (some case are sadly quite clear), I still feel like a worthless failure and that I’ll never be good enough to get a job writing software (even though I’ve done it several times before).

It’s hard to not be discouraged when faced with rejection. When you ask someone out and they say no, when you show someone something you’ve worked on and they criticize it or they’re not impressed, it hurts. No one likes that feeling. We all deal with it in different ways. But rejection is part of the process of getting to where we need to go. It can be hard to believe that everything happens for a reason when the odds seem stacked against you, and you can’t catch a break. But it’s possible that things are still just working themselves out.


Why don’t I just give up?

I won’t lie, like I mentioned before, I’ve thought about giving up on the field and switching careers. So why do I tough it out? Part of it is stubbornness, part of it is sunk-cost fallacy. I have the experience, I’ve put in the time, I got the degree, and paid for the education. And you know what? There’s a lot about writing software I still really love. And when I don’t write it for periods of time, it feels like there’s a sizable hole, a small piece of me missing. It feels bizarre to actually confront letting it go.

I also know that right now, Software Engineering is the best way to get to where I want to go. It is the straightest path, my vehicle to financial independence. Then if I decide, I can change careers with less regrets, or continue developing software completely on my own terms. No bullshit interview process, no brogrammer culture. No being stuck on an on-call rotation I didn’t sign up for, living a life devoid of work-life balance. No fixing bugs 8 hrs a day, every day. Only creating things that inspire me and keep me motivated.

I’m glad FIRE exists to give a better option; the opportunity to break free of the cycle, should it be needed.

Until then, I’ll let you know how it goes.




*photo credit: