Hey there! It's Lara, author of the infamous"Tales of a Non-Unicorn: A Story About the Trouble with Job Titles and Descriptions" from a couple years back. If you haven't read that original article, I recommend skimming it to give you some context for this one, but I think you'll still find value here even if you don't.
A lot has happened since I wrote that article in 2015, and this follow-up has been in the works for a good six months. I ended up, not with a solution for the job titles conundrum or a manifesto about the importance of HTML and CSS, rather a simple, honest story about my roller coaster ride.
Okay, enough dilly-dally. Let's go!
In the aftermath of the FizzBuzz drama in 2015, I doubled down on my freelance business and did really well. I got a great contract gig with startup in New York refactoring a Haml/Bootstrap situation that paid the bills and then some. I hired an assistant and started the Tackle Box, an online school sort-of-thing where I taught web development and WordPress. I made a little money off that one, too. I spoke at a handful of conferences and meetups, taught a bunch of classes, and generally had the pedal to the metal.
Then I got really, really tired.
I was sick of writing emails, sick of sending invoices, and sick of being on the computer all the damn time. I wanted to go to work and then leave work at work; something that is very hard to do in our industry, and extra difficult when you are your own boss. I enjoyed coding sometimes, but it was all about the billable hour. Why should I write code or be on the computer at all if I'm not being paid for it? This was burnout, that thing that's become a weird, convoluted rite of passage in our industry.
I wanted to shut down Lara Schenck, LLC and be a ski bum. And you know what? I did. It was time for a break, and I took one for about six months.
Ski Bum Sabbatical
I left New York City in August of 2016 and moved back to my family's farm near Pittsburgh. I got a job cleaning horse stalls for $7/hr at the stable where I used to ride when I was a kid. My plan was to gradually ramp down business while I lived rent-free and prepared myself for the simple life. That December, I would be starting work as a bartender at Goldminer's Daughter Lodge in Alta, Utah, a tiny ski town outside of Salt Lake City. Room and board were included in the job; I'd make enough pocket money for booze, and my life would consist of skiing, sleeping, and socializing. No emails.
The simple life was okay for a little bit, but bartending at a 3:2 beer bar and skiing every day wasn't as fulfilling as I'd hoped. I cut the season short and moved to Los Angeles in March with my partner at the time. We had a mutual friend with an open room in Hollywood, and I was starved for city-living. (I have since learned that LA is not the city-living I expected, at all, but that's another conversation.)
Time to Get a Job (for real this time)
I formally announced I was back on the scene, reached out to old clients and people from my New York network, and was even on a podcast out of the gate. None of that translated into much paying work. Luckily, I had a cushion of savings to float me for a few months (Freelancing Rule #1: You must have savings), but my heart just wasn't in the freelance hustle this time. The prospect of negotiating contracts and engaging new leads was nauseating rather than exciting, and the small business website work I did was no longer the challenging and invigorating experience it had been before.
I decided to get a full-time job, for real this time. Once again, I wanted to work on a team and on bigger projects. I was tired of doing everything myself, and I wanted to learn from and share my experience with others. And, you know, a regular paycheck.
I set to work applying for jobs, putting long hours into carefully crafted cover letters. I had several promising interviews, got my hopes way up a couple of times, and received zero job offers. For one particular role, I'd gotten as far as discussing salary requirements and start dates, and was expecting an offer letter within the week. Then, the next week they were all of a sudden no longer hiring. I didn't run into any FizzBuzz, for better or for worse.
I started to question why my designer/developer skillset appeared to hold so little value now when I'd felt so in demand just a year ago. I stubbornly refused to learn React just so I could have it on my resume—I'm great at other important things, why can't people see that?! I wondered whether the five years of self-employment was a hindrance, or was there something fundamentally wrong with how I interviewed? Did I shoot myself in the foot with this whole "non-unicorn" thing in the first place?
These months were a major ego-check. It turns out, full-time jobs aren't something you can just "get." It's just not that easy, for me at least.
The Value of HTML and CSS
HTML and CSS are valuable, but intimate knowledge of them has become more of a specialist role. Perhaps, one can position their skills as HTML, CSS, plus something else (e.g. UI design or WordPress). The nature of products and rapid feature releases deem quality HTML and CSS an afterthought at many companies so at the moment, maybe the demand just isn't there. Perhaps the rise in accessibility awareness, design systems, and time lost debugging bad CSS will change the tide?
The episode was well received; I was obviously not the only one struggling with this issue. I made a Github repository called Front-end Discourse with the intention of gathering and synthesizing opinions and coming up with a plan of action on the job titles front. Chris even wrote about the job titles conundrum here on CSS-Tricks. The momentum was there; this could be my thing!
But then...I let it die.
An Unexpected Twist
A few days after the ShopTalk episode came out, I received this tweet:
Umm...that's a link to a Google job post.
I thought it was a joke at first, but nope, the tweet author sent me an email later that day, and it was the real deal! They'd been referred to me by a benevolent figure in the web industry whom I'd never met. I had a call with them and another member of their team, and it was magical. They told me all about a new team starting within Developer Relations at Google that would be working to improve the "Web Content Ecosystem." Web Content Ecosystem? That's WordPress! And they were recruiting me! Holy sh#t, this actually happens!
This was my dream job, not a front-end designer/developer role. I didn't even know this was a job! I had already been doing this work on my own time for several years: teaching and speaking about WordPress, writing informational blog posts, recording videos, and helping people use WordPress more responsibly. And they would move me to San Francisco! I was not a huge fan of Los Angeles.
Unfortunately, Google doesn't just "give" people jobs...you have to interview.
Computer Science Bootcamp
Now we have me, the designer who applied for a JS job and failed FizzBuzz, preparing for the Google interview otherwise known as the grandparent of all technical white-boarding interviews. It was time to swallow any feelings I had toward this interviewing style and get to work.
I had three weeks until a "coaching call" that would unofficially determine whether or not I could skip the technical phone screening and jump straight to the day of on-site interviews because, duh, this was meant to be. Luckily, this coincided with a lull in freelance work, which had also been picking up, so for about a week and a half, I put myself through a self-directed computer science bootcamp. On the way, I wrote a bunch of blog posts about what I learned.
Oh, how I longed to write that Tales of a Non-Unicorn: I GOT A JOB AT GOOGLE, [email protected]#KERS!!! follow-up for all those Reddit haters after it was said and done!
The day of the coaching call arrived, and it was fantastic! I was a little slow on the coding question, but it wasn't as hard as I'd thought, I aced the role-related questions, and the interviewer was excellent. I heard back from the recruiter who was coordinating with me, and he said I could go straight to the on-site interviews.
In the meantime, I went to WordCamp US in Nashville where this particular team at Google was a sponsor. I got to meet a few of the folks I'd be working with, and it seemed like such a great fit. This Google interest and being at WordCamp made me question why, at the beginning of my job search, I had seen my knowledge of WordPress as such a secondary skillset. WordPress is everywhere! And its awesome! I mean, sure, it's not that "cool" yet, but mark my words, it will be in the "cool" ranks soon enough.
The Non-Unicorn Interviews at Google
In the week leading up to the interview, I focused on researching the role and beefing up my passion for improving WordPress and helping those who work with it. This was not a software engineering role, after all; in Developer Relations, passion for and knowledge of your subject is more important than knowing binary tree traversal, right?
Google flew me to San Francisco and put me up in a nice hotel. I had a full day of four interviews—usually, it's five, one was canceled—and a long, enjoyable lunch with the folks I'd been in touch with from the get-go. I didn't feel great about my performance in the technical parts of the interviews, but I did my best and my strategy was to come off as a great coworker who knows when to ask for help. When in doubt, I remembered the strong correlation between "hard interview" and "received offer" on Google's Glassdoor profile.
Back in LA, freelance work kept me busy while I waited for a verdict, which wasn't long. I felt relatively zen about the whole thing. Yes, I had my hopes up, but if it didn't work out, I at least had work to pay the bills, and it wasn't going half-bad. I'd been contracting with an agency and learning a lot; it wasn't the small business WordPress sites I'd been building all by myself previously.
The Thursday after my Monday interview, I got a call from my recruiter contact. They were not going to proceed with the approval process at this time. He said I showed some very promising "Google-y" qualities, but my performance in the coding portion of the interviews wasn't strong enough. He said he had it in his calendar to reconnect with me in six months, and that he would keep an eye out for less technical roles that might be a better fit.
Incredibly, I was able to fend off the majority of the anger and the "I'm a failure and I suck at everything" thoughts that go hand-in-hand with rejection, maybe in part because I received such a nice email from one of the people I'd been in touch with throughout the process. He had applied three times before he got a job there—which apparently is not uncommon—and this simply meant I'd be taking a slightly different path. They were all bummed I didn't make it.
This brings us back to the present. I don't feel sour about algorithms or white-boarding interviews...I have another one to get ready for in six months! Unless, of course, another really awesome opportunity comes my way in the meantime. Who knows.
This whole job search has been such a ridiculous roller coaster of hopes slowly going up then crashing down. If there's one thing I've learned, it's that I still don't know where I'll end up, but I'm doing my best and I'll keep doing it until the right thing comes along.
Whew, that was a lot! Thanks for making it this far. A+ for you, reader!
Before I wrap this thing up, I want to make a few observations about this whole job searching process that I hope can help others on their roller coaster ride.
- Algorithms and white-boarding interviews aren't necessarily bad. I think they can be implemented badly. The Big Tech Companies are fully aware that they miss out on great candidates because of algorithm questions, but this interviewing strategy is so good at filtering out bad candidates that they keep it around. It sucks for us, but I don't see that changing anytime soon. Plus, I learned a hell of a lot of stuff preparing for it, and it's made me a better developer and better human being.
- Write a "Reverse Job Post." I don't recall where I learned about it, but here's mine for reference. Even if no one reads it, it's a great way to figure out what type of job and company you are looking for, and you could totally paste a link to it in the cover letter field for an application and call it a day.
- Learn computer science fundamentals. I know we are already inundated with things to learn, so it's hard to preach this, but having context for what the tools we use actually are has helped me a lot. For example, two months ago I would have had a hard time wrapping my mind around GraphQL, but in my interview preparation I learned about graphs and tree data structures, so I was able to understand the concept relatively easily. Cracking the Coding Interview is not a good place to start, BaseCS and the Impostor's Handbook are. Also, stay tuned for some relevant articles here on CSS-Tricks, from yours truly!
- Don't spend all of your time on job boards. It's a crapshoot. I think there are great job boards, but in general, no matter how quality the listing, whether or not the position is actually available or accurately represented in the post is a toss-up.
- Be vocal. I doubt any of this Google stuff would have happened if I hadn't written into ShopTalk show and asked Chris to have me on the episode. If you have an impulse to write something or have a question or feel the urge to tweet at someone you don't know, do it (but be a good person about it, obviously). The more web people that know you exist, the more likely it is that something will come your way.
Those are some things that helped me, but I still don't have a job, so maybe don't listen to what I say. I don't know. It's an incredibly difficult and demeaning process, and there's no secret sauce that works for everyone. Our industry is a young one, and as far as I'm aware, there is no such thing as a surefire career path in web development.
I hope I don't write another "Tales of a Non-Unicorn" installment. The whole idea of a "unicorn" is bogus, anyway. We are all just people, with different levels of knowledge in different areas, and if you can honestly say you're doing your best then I think that's all you can do.
What I will be writing, however, are some "Computer Science Study Guides" for the self-taught developer, here on CSS-Tricks, and maybe some stuff about how cool WordPress is nowadays. At the very least, "Intro To Algorithms" will be coming at you, soon!
How about you, reader?
Have you been on this roller coaster ride, too? Where did you end up? What advice can you offer to those of us who are still in the midst of our journey?