4 months of unemployment
This post was originally shared on Medium.
How I ended up here
First of all, let’s picture this frame. Back when I was a student, I was fortunate enough to have found my first job at the very same college I was studying. I didn’t look for it, I just stumbled upon it.
Then, 5 years later, I just happened to find the company I would be working for the next 2.5 years. I was reading an article online and got interested in this mentioned company. Again, everything happened very organically.
What I’m saying is, I’ve been extremely lucky to never have had the need to actively look for a job. Especially with the pressure of being unemployed.
If you’re interested in a detailed background, keep reading. Otherwise feel free to jump to the And so it begins section.
Some details about my background
My interest for coding started very early. I was somewhere around 13 and 15 years old. mIRC was the default way of communication among my friends. mIRC Scripting was the language we could use to create our own bots and themes. That’s where I started, creating my own bots. I would spend countless hours trying to figure out how to make a bot behave the way I intended it to. It was fun, and I naturally looked for something similar when I had to choose a specialty subject area.
Eventually, this school came along that featured a few interesting subjects, from photography to web development and also 3D and graphic design. I was extremely excited to be able to continue learning about this stuff I was interested in.
When I finished this school, I had to do a big project that would make use of as many of these skills we have learned as possible. I designed a website and some merch for a band. Did the copy writing. Implemented the front-end. The header was Flash, so I was able to implement a small mp3 player showcasing their music. Then I also structured the whole database, and implemented a CMS for them to be able to tweak any of the contents. Scored 19/20—I was extremely happy!
But there was clearly a lack of visual culture. Even I—who was always more interested in the tech side of things—was feeling it. So I decided to take a degree in arts, so I could fill this gap in my skillset. At this point I had already decided I would like to work for the web, for as long as I could.
The subjects changed drastically, as you would expect. Photography, web design (very happy about this one!), designing for screens, typography, color theory, grids, arts & design history…
I remember some teachers telling me in the very first year:
Be like a sponge—soak up on as much knowledge as you can, so you can later ditch what you don’t need.
During the last year of my degree, I started working at the web development office in the same college I was studying in. Very proud. I had learned a lot of skills that would make me a better profissional and I couldn’t wait to make use of all this knowledge I had acquired over the past few years.
I started working for the web, roughly 8 years ago. Back then, I was a hybrid of a web designer and a developer. I was designing some of the layouts and implementing the front-end. Sometimes also dealing with back-end stuff although it was never my cup of tea.
I actually felt like this mix of design and development skills were very useful and valuable to have. I kept learning new stuff, but I was always more interested in developing my developer skills.
Fast forward to 2016
I eventually got hired by Doist as a Front-end Developer / Web Designer and I was extremely excited about it. Not only would I be able to live my dream of working remotely, I would also be able to work with a very talented team, from all over the world.
The front-end team was made of only 2 people, and we were both developers with an eye for detail. For this reason, we were officially part of the design team at that moment.
There were always some discussions about wether or not we should be part of the design team or the web dev team. Later in time, the leading team decided to move us from the design team, and together with 2 other developers, created the front-end team. We are 4 now. 2 of us leaning towards the design side and the other 2 leaning towards the engineering side.
It was definitely a great experience for me, since I was very interested in learning more with talented developers since the beginning. But little did I know, what the future held for us.
2.5 years after joining, I was asked to leave the company. The reason behind this decision was simple: the company no longer needed a front-end team with design skills, so both me and the other front-end developer / designer ended up being dismissed.
I could argue of why I thought it was a bad decision, but everyone has their own point of view. I certainly learned a lot and I’m extremely grateful for ever being given the opportunity to work with such an amazing team.
I would like to take this opportunity to thank Alex Muench and Pedro Santos for all their help after this point. Reaching out for their own network of friends or social media followers has been extremely helpful and encouraging!
Thanks, guys ❤️
And so it begins
It’s mid September 2018, and I start looking for a job. Lots of great companies to pick from. Time to update my CV (or resumé, if you will) and put myself on the market. The latest one was so old that I actually redesigned it from scratch. Also took some time to develop an online version of the CV, AKA a /hireme page.
Generally, my approach would be as follows:
- Find a company I would like to work for;
- Find a team member that might be doing something similar to what I would do;
- Stalk their social media in search for an email address (it’s usually in their GitHub profile);
- Send them an email presenting myself and asking if they would be open for some questions and a quick talk about the company;
Notice that I’m not looking for open roles. This doesn’t always work, and there’s a high chance you’ll find yourself in a dead end. But I often prefer this more personal approach. Even when there are open roles, I would still follow this approach to get a feeling for how the company reacts to this kind of spontaneous applications, rather than just applying and hoping for the best.
I like this approach because I find it much harder to find a great company/team to work with, than an interesting role. And I would rather work on something that’s not quite what I wished for, with a great team, than working on the perfect role with a shitty team.
So I started sending emails to a bunch of companies I admired (past tense), following this approach. And this actually resulted in a great amount of interviews.
What this means to me, and I can be wrong, is that companies actually find my profile to be interesting, otherwise they wouldn’t even consider wasting their time with me. So that’s great!
The very first interviews usually serve the purpose of finding out if we’re a fit for each other. I might ask myself “Is this company/role really what I’m looking for?” and they might ask “Would this guy be a great fit for our team?”, “Would he feel comfortable with our existing working culture?”. And 90% of the time, I would pass the test. Although I’m an introvert, if I can relate to the person on the other side in any way, the conversation will flow and we’ll have a great time.
One time, the interviewer, who was also the CEO, was telling me that the most important thing for him was to figure out if the person on the other side is someone he would like to hang out with in a bar while drinking some beers. And he said I was that guy, I have passed the test. Even though I don’t drink alcohol or hang out in bars. (I actually told him that and we both laughed.)
Next step: the technical test
This is where things start to get interesting. Or should I say sad?
There are many approaches to this, but I’ve come across a few that I would like to talk about.
On-the-fly technical questions
What this means is that during an interview, the interviewer will just shoot a couple of questions your way. Something like:
- Have you ever used [insert framework here]?
- What do you think are the benefits of [insert framework here] over [another one here]?
- Let’s say you would do a clone of [insert famous social media website]. How would you do it?
- What would you use a for loop for?
If I would be applying for a local company, this usually involves a white board and some hypothetical environment.
Sharing the screen code test
The interviewer will schedule an appointment beforehand stating that you will be sharing your screen while attempting to solve a problem that will be presented to you, within 20 or 30min.
Sounds amazing, right? You’re presented with a link, which you should open. In that link there’s a message stating that this is a timed test, and as soon as you press the start button, there’s no going back. And you can only do this test once.
There are also different approaches to these trivia tests. You either have fixed amount of minutes for the whole test, or you have certain amount of seconds for each question, that may differ depending on the size of the question.
I hate these! I absolutely hate these! And I can’t emphasise this enough. Why would companies even consider something like this? What are they even trying to test?
Here’s what I found on these tests and why I hate them so much:
- Sometimes, you just don’t have enough time to read the question and the multiple options more than 1x.
- Sometimes, a lucky guess sends the wrong message.
- Sometimes, there are typos in the text and you end up in scenario 1.
- Sometimes, you’re presented a code snippet and you’re asked what’s the result. It’s funny when this snippet has a syntax error, and there’s no option for that. So you end up in scenario 1.
- Sometimes, you do have enough time, and you can search for an answer. Sending a wrong message once again.
- Most often, in a real world scenario, you don’t have a ticking clock to debug an issue.
What these kind of tests are saying to me, is that the company isn’t really interested in knowing what my approach would be to code an actual project, or to solve an actual issue.
Also, they’re more interested in seeing how well I can perform under this ticking pressure. And if that’s the actual working environment, if deadlines have more relevance than the overall quality of the work, it’s just not a healthy place to work at, and it’s definitely not for me.
A side note: I was extremely disappointed when I tried to apply my approach (described above) to a certain company, only to find out there was no email address of anyone in the team to be found, and there was no way to contact anyone. I was funnelled down to an application that would lead me to one of these trivia tests. I didn’t perform as good as they would expect. I got an email from a noreply email address saying I was out. I never got in touch with anyone. And it’s not a small company I’m talking about. If you’re in the productivity world, chances are you’ve come across them, or even used their products.
When a company treats their human resources like this, something very wrong is happening behind the scenes, IMHO.
Take home tests
These are the ones that make more sense to me, especially for a remote company.
Even so, there are different approaches that can be seen. Most often than not, you’re given a hypothetical project to work on. It should be very small, 2–4h and up to 8h, and should give you enough flexibility for you to work with. You don’t have to start and finish it within the set amount of hours. You might start working on it one day and finish it 2 days after.
That’s the kind of setup that I would like to find in a real world scenario. Quality over deadlines. The different approaches I mentioned refers to the fact that almost always, you’re wasting your time on something that will go to waste when the process is done. Regardless of whether you get hired or not, that test project is dead.
A better approach (shoutout to MOXY), is when you work on an open source project. You will be facing some already existing coding patterns. You will be facing some very specific issues. And you assign yourself 1 or 2 issues and try to solve them.
You’re working on your skills. You’re helping the community. And your interviewer will be able to see how you would adapt to an existing code base.
Next step: waiting for a review
When you’re doing the tests in a synchronous way, the feedback should be instant. When you’re doing them in an asynchronous way, you never know how you did until you hear back from them.
And this is where I usually get left behind.
I’m certainly not an engineer, I don’t have the kind of theory background that engineers go through to get their degree. Everything I know comes from personal interest and from working on specific projects with technologies A or B and frameworks X and Y.
Some feedback patterns I noticed
With your skillset, I’m certain you’ll find a new job with ease, even if not here.
Meanwhile, 4 months later, I’m still here, looking for a job.
Your skillset is certainly useful, but right now we’re looking for something else.
I’m aware a designer that self-teaches himself to be a developer is not common. And I do believe there are some great benefits from this mix. Unfortunately, not every company needs or even values this.
You’re certainly a great guy and you have some good experience, but unfortunately you lack the engineering skills we’re looking for.
Of course I do. I’m not an engineer.
Reflecting on this cycle
And you might ask “Are you applying for engineering positions at all?”. I honestly don’t think the title is that relevant. One thing I always do is read the job descriptions. And it’s amazing how some companies manage to write a whole lot of what they’re expecting from you, and not a single word about what you would actually be doing.
If a position mentions anything that interests me, I’m applying for it, regardless of the title.
I’ve seen it all: Web Developer, Front-end Developer, Front-end Engineer, Front-end Web Developer, Software Engineer, Web Front-end Developer, and even some developer/designer hybrids.
All of them had something in common. They expected candidates to be comfortable with web technologies.
At this point I’m starting to second guess all of my professional decisions.
Should I even have gotten an arts degree when I’m interested in code? Should I be applying for designer roles instead?
It’s very frustrating to be honest, because designer roles usually ask for a portfolio. And I haven’t been actively designing for the past couple of years. On the other hand, developer roles expect some level of knowledge that I’ve never had to deal with.
And I also don’t think I would be completely happy with a designer role, that is, never touching code. I would say the perfect mix would be 70% code with 30% design.
The worst of it all
Having spent a lot of time in interviews, I have come across some very bad behaviours that I would like to touch on.
The increment lesson
If you’re not an engineer, chances are you have never heard of this before. I know I haven’t.
Apparently, there are 2 possible ways of incrementing a variable. I’m not going into details here, which you can easily search for.
The conversation went like this:
HIM: Explain to me what’s the difference between post-increment and pre-increment.
ME: I don’t even know what you’re talking about…
HIM: Do you know what increment is?
ME: I sure do. For instance, given a variable
x, you can increment its value by 1, doing
HIM: That’s correct. Now this is what I mean by post-increment and pre-increment…
Flips his laptop around, facing me, while explaining.
ME: Oh! That’s interesting… I’ve never seen that or even heard of it. What would it be used for?
HIM: I honestly don’t know for sure, I have never used it either. I just ask this question to check on the level of candidates.
Are you freaking serious?! What kind of assertion do you even get from this if you’re not even able of giving me an example where it would be useful?
It’s been more than 1 month since this interview. Never heard back from them. They’re a Portuguese company working as a partner with one major German car manufacturer. It’s not like they’re just starting out. They should know what they’re doing.
The nested functions
At another company, I was asked a bunch of technical questions, and out of a sudden I was presented the following code snippet:
And the question was: “The result we want is
Hello Pedro. How can we get there?”
Looking at it right now, it doesn’t seem that hard to get there. What tricked me during the interview was the very weird coding pattern coming right after a bunch of normal questions. I wasn’t able to get this right at the moment.
If this is the kind of scenario I would see in your codebase, then perhaps I’m happy I didn’t end up there.
The answer is
hello()("Pedro")(). How often do you see something like this?
The “I can’t say much” feedback
I can’t share too much feedback, other than to say we typically like to see more proficiency in [insert skill].
This is the answer I got when I asked the recruiter of a big company and usually a reference in design, for some extra feedback after getting an email from them saying they wouldn’t see me as a fit for that specific role.
What exactly went wrong? I will never know. I did a technical interview with 2 developers from their side. The pressure was extremely high, given that I’m sharing my screen, I’m working in a dev environment I’m not used to, I have a camera pointing at me and a microphone hearing everything I say. Not only that, I also get to hear some of their comments from time to time, while trying to solve the problem they shared, which is a huge distraction.
Surprise surprise… it didn’t go well.
The lack of motivation argument
It’s mid November, and I just had an interview at a local company. I honestly felt like it did go well. After a week without hearing back from them, I sent an email and asked for some feedback.
Got a reply 2 weeks later: “I thought I answered you already but just came to realise I did not.”
Thumbs up for being honest, thumbs down for not caring.
As you probably have guessed by now, we decided not to go forward with your candidature, and give priority to frontend developers who show more motivation to work with us, as well as more experience with custom frontend development.
More motivation? More experience with custom front-end? What?! I politely asked him to expand on his thoughts. Never heard back from him again.
Should I be jumping into their office with balloons attached to my wrists? I specifically mentioned I applied because I liked their visual style on both their website as well as their featured work. Is it not enough motivation to be excited about at this stage? Working with a team that shares the same visual language isn’t motivating to you?
Will never know what they were looking for.
Perhaps I’m not aware of what “custom front-end” means?
The unfortunate misunderstanding
After being tired of applying to positions and inevitably hearing the “you lack this or that skill” feedback, I started saying it loud and clear in the very first contact I had with several companies.
“I’m not an engineer.”, “I’m not that experienced with [insert framework], but that’s exactly what I would like to get into”…
Not only that, companies have also shared feedback like “Oh, don’t worry about it, we might actually need something different than what’s posted our job board”. So I felt we were on the same page, good to know!
How frustrating is it, going through numerous interviews and tests, only to get to the same result? “Apparently you lack some engineering skills that we would like to see in a candidate.”.
Even though I told them from the start I’m not an engineer. So why make me waste my time and your time if I’m telling you I’m not an engineer and you’re looking for one?
At another local company I was told from the start that I would be entering a small team of 6 people, but I would be the only one working on this specific project. So for that reason, I would be able to work 2x a week from home. The other 3 days I would go to the office to build the team spirit, as the team is growing.
Sounds good to me, let’s keep going.
Went through a technical interview and had a talk with the CEO on the same day. Got positive feedback from all of them.
But they work in a close relationship with their clients so they would share my profile with them and wait for an answer.
Out of all the possible outcomes, I never considered the answer would be:
We just heard back from our client, and for now, they would like to build up their local team in [insert country]. So for that reason, you would not be the ideal candidate for this position.
We still like you and we believe you would be a great addition to our team, but right now, we don’t have a position for you.
Then why make me go through all these interviews?!
The lack of professionalism
I may or may not have saved the “best” for last.
This is one big Portuguese company, on their own league, which has just achieve a big milestone on their journey. They’re well known globally. Just to set things straight, we’re not talking about a “creative studio” of 3 people here.
I applied for an open position—this is so bad the position isn’t even relevant for this story. We exchanged some emails and scheduled a quick chat for the 20th at 15h. She asks if I would prefer to do it over the phone or [their platform of choice for video calls]. I reply “It’s up to you, really. However you feel more comfortable.”.
It’s 14h50. She hasn’t replied back yet, so I sent her an email with my phone number, just in case.
I get an email a few minutes later, where she says that because of the fact that I replied too late, it would be better to postpone our call by 1h (at 16h). She would call me to my phone.
It’s 15h50. I’m ready for that call.
It never happened.
Around 17h I get an email from her saying she had tried to call me but with no success.
I got into panda mode, even though I shouldn’t. I have just “wasted” a whole afternoon for this call that never happened. I replied back, letting her know how mad I was about all this.
She replied right after saying sorry and that we could try again the next day (the 21st) at 14h.
It’s the 21st at 14h. I’m waiting for that call.
14h15, it finally happened!
I start by saying how sorry I am for being so mad yesterday, she interrupts me by saying “Oh no, don’t worry about that, it happens all the time, especially when people write each other…”—“Okay…”, I think…
She continues: “The thing is, yesterday, I got distracted with a bunch of other tasks and when I noticed, it was already too late to call you.”
What?! Say what?! So she emailed me saying she had tried to call me but with no success. Almost as if my phone was off or something. And know she admits she hadn’t even tried once?! Why am I even considering this company in the first place?
It didn’t end there.
So we had our talk, and by the end of it, we scheduled another meeting for the 30th at 14h. This appointment still lacks confirmation of availability of 2 other people. Fine by me.
It’s the 27th and I haven’t yet got a confirmation, so I asked her.
I got a reply on the 29th saying the 2 other people wouldn’t be available at 14h and asks if I would still be available at 15h.
A few hours later she was already asking again if I would be available at 15h. I just waited 2 days for her reply, and she can’t even wait a few hours?!
When I got back home, at 20h I replied back saying it would be fine.
It’s the 30th in the morning (the day of the appointment), and she emails me saying that because of the fact that I replied so late, she only got to see the email in the morning and it would already be too late for them. Also asked if instead of that I would be available at lunch time for a quick call.
I don’t even know what to say… But I said yes, I would be available after 13h.
I had lunch, went back to my home office, laid my phone on the table and started working on something else.
I look at the clock. It’s 16h, she never called.
A few days latter she sent me an email saying she got sick—but according to her history, did she really?—and would like to schedule another appointment.
We eventually had the appointment and the technical interview and during the technical interview I got asked “the nesting functions” question I mentioned above.
Totally worth it, wasn’t it?
The conclusion I get to
The tests should not be passing
Companies are asking surreal questions that won’t play an important role during the actual work for that position. And especially, companies are testing for unreal conditions.
Think about it. You are testing for being a TAXI driver. Would it make sense to make you drive on a NASCAR race track to see if you can handle the job? What about traffic? What about other cars? What about traffic lights? All this and all the other things that may happen in a city are being ignored. You may excell in the NASCAR race track, but fail miserably in the city.
So why are remote companies testing if I will perform well during a technical interview with a camera pointing at me, 2 developers looking “over my shoulder” and a ticking clock to solve or debug a problem? This is not your daily environment, why are you doing it?!
I could excell at that. But what about working at home? Do I have what it takes to motivate me to work from home without distractions? Are you testing that? Is it not relevant to you?
What if music relaxes me and makes get in “the zone” easier? Do you not care about that?
Frameworks are ephemeral
Companies also test a lot for frameworks and tech stacks. That’s not bad per se, but it’s terrible if you’re not considering the will of an applicant to learn that skill, or even their ability to learn new things.
I understand why it’s relevant for a company that I know framework X. But will it be relevant in 3 years time? The web is constantly changing, just like any other tech related jobs.
Webpack, for instance, is around since 2012, but only in 2015 it started to see some growth. May I remind you, 2015 was 4 years ago.
Again, I’m not saying it’s not relevant that a candidate already knows the ins and outs of the tech stack you’re using. What I’m saying is that there’s a high chance a new technology or framework will come along in the coming years that no one is using right now.
Why is the learning ability factor not relevant?
It’s a social game
Unfortunately for me, as an introvert, this is not the kind of game I like to play.
I get told a lot that I’m usually too honest during interviews, not by the ones interviewing me, but by my friends. It’s probably because I’m naive, or autistic as some would say. For instance, right now, if I was asked “Have you used React before?” I would say “Yeah, I worked with it for a couple of months and then started learning more from it on the side.” and this for some is too much information and perhaps “Yeah, I love it” would work better in my favour.
I feel like I can’t be who I’m not. That would be overthinking my answers. And while I’m sure someone who does that will take advantage from it, I just don’t feel comfortable doing it. I would rather find a team that values what I’m saying.
Again, why are you trusting what I’m saying anyway? Make me prove it. Ask me to solve a problem. You won’t believe the amount of recruiters I talked with (in Portuguese) who asked how good my English is, and I just said “It’s great! I’ve been using it for the past few years.” (in Portuguese). And I literally see them marking it as checked on a piece of paper.
Just a few actually made me talk in English. Which makes me believe they’re all waiting for a certain answer and are not listening to what applicants say.
Out of all the interviews I’ve had, only 1 was written. And you know what, it makes perfect sense!
In a world where your looks, the way you behave, your body language, the way you talk and even your voice says more to the interviewer/recruiter than the actual work you’ve done or what you want to accomplish in the next year, it’s really refreshing to have a written interview.
It goes back to the idea of testing what you care about. If you’re a remote company and you’re going to talk to that person via text most of the time, why not doing a whole interview in text to see how well they perform?
More over, these factors can still play a role, unconsciously, even if you’re aware of them. For instance, women are naturally more inclined to think a candidate is a better fit for a specific role just because of a lower pitch voice. Is their voice relevant for the role? Not at all. Are there better candidates? Probably. But this one has a deeper voice, so it sounds better.
I’m totally the opposite of this. I’m an introvert, I’m never sure how to behave at a gathering, I don’t feel comfortable around many people, I don’t like to talk to a large group of people. These are all behaviours that if done right, would help my professional self shine. But it’s just not who I am.
We all have our own personal preferences, quirky personalities and social media followers for that matter. It just doesn’t make any sense that these weigh more than what you can actually do.
Some thoughts for the future
4 months are 120 days
It’s also 1/3 of a year—it’s an extremely long time!
If you ever end up in a similar situation, remember not to despair. Take this time to work on those small things you would like to get to and never did. Work on some things you usually wouldn’t. Try something new. Spoil yourself a little bit if it helps you cope with it.
Save some money
For me personally, this couldn’t have come at a worst point in time. I’ve just moved into a new place, my savings got a serious cut because of it. But still, never let yourself end up in a savings-less situation. Set your own threshold value to set your inner alarms. Think of a value that would let you live your current life, or a toned down version of it, for an X number of months. And never go past that value on your savings, no matter what.
Have some side gigs
For 2 main reasons: money and mental sanity.
Chances are, a side gig will eventually generate some money for you. No matter how much that may be, it will certainly help your savings not getting such a huge hit, if need be.
You also have something else to fill your calendar as you find yourself with lots of free time. Think about what new features you could work on during this time to generate a new growth wave when you need the most.
Don’t deprive yourself from doing what you love
It’s a hard time. We all know that. But you know what’s harder? Staying at home all day, for 120 days.
If you worked on your savings, you should be able to go out with your loved ones. Go to a zoo. Take a walk at the local park. Do some exercise. Have dinner with friends. Play that game you have been wanting to play for a long time. Build something with your own hands. Work on your cook skills. Wash your car like never before.
The possibilities are endless.
Set yourself some days per week to work on your job hunt. You can do whatever you want on the others.
A note on remote working
Some companies I got in touch with, don’t quite get what this means. Working remotely doesn’t mean I will be working in your company office for a remote client. Call it something else please.
How would you like a “fresh bread” that has been sitting on the fridge for 2 weeks? Not exactly what you pictured in your mind, is it?
One of the benefits of working remotely is being able to balance your personal and work life as you please. Have an appointment in the morning? No worries, you’ll get work done in the evening. Feel like going for a walk after lunch? That’s fine, work can wait.
If you’re willing to use the word “remote” in your job posting, make sure you don’t force your employees to be reachable from 9 to 5. It’s not just about not having a physical office.
Understand the inherent costs of asking your employees to go to an office on a daily basis.
An office located just 30km away from home, means an extra cost of 400€ monthly. In a country where the minimum wage is 630€, that’s relevant! You’re asking your employees to pay 400€ to go to work. And this isn’t even considering the amount of time you waste.
Imagine a future where just half of the population works remotely.
Can you imagine not having to go through the rush hour traffic every single morning? Can you imagine the amount of gas that would be saved during a year? Can you imagine the healthier air quality? Can you imagine living with your loved ones for a longer time [ref]?
Don’t you want to live in that future? Consider remote working policies, if you care about your employees.
I keep a Google Sheet with all kinds of information about the processes I get into, since the beginning.
Here are some numbers:
- 4 months
- 30+ interviews
- 50+ companies
- 60+ people involved
- 120+ emails