Zen and the Art of Codercycle Maintenance

I was inspired to write again after reading a post from dev.to about chronicling your journey as a developer. I would highly recommend following them on Twitter for some encouraging content for those of us trying to break into our first job.

The job hunt ain’t easy, and we’re surrounded by well-meaning advice-givers telling us what we “should” be doing. While it’s great that people in the tech world care about our journey, all of that advice gets overwhelming real fast, and it’s easy to beat yourself up when you aren’t doing all the things.

It seems there’s a million and one good ideas for us young bucks to further our careers, but which ones do we pursue? Do we apply to 40 jobs a week? Cold-outreach to engineers at those companies? Learn the hot new frameworks? Build projects in said hot new frameworks? Attend every meetup we can? Contribute to open-source repositories?

All of those things are great ways to spend time, but when you do them out of a sense of obligation, it can kill the joy that inspired us on this career path in the first place. Granted, work isn’t always meant to be fun, and it’s good to push ourselves outside of our comfort zone as much as we are able.

Nevertheless, I was a victim of feeling like I was doing everything “right” but getting turned down left and right from companies I applied to. It’s a discouraging feeling to have 130+ job applications circulating in the ether, and then getting ghosted or rejected from all of them, even in spite of my best efforts to connect with members of the engineering teams.

The critique I almost always received from rejections was that the company was looking for someone with “more experience.” It’s all too similar to being fresh out of college and getting those same kinds of responses.

Thankfully, through my cold outreach efforts, I was able to connect with a gentleman from the engineering team at Kiva, even though the company had turned down my application. He was generous enough with his time to answer some of my questions and unpack the “need more experience” rejection for me. In a nutshell, he told me it is tough to onboard junior engineers at some companies. While some may have the bandwidth to train junior devs, others do not. In addition, being an experienced engineer is more than being able to solve a complex algorithm or build a Twitter clone in several languages. It involves solving business problems and really thinking through them. Coding becomes only about 20% of the job after that. Having that kind of experience, he said, will make it easier to adapt to a new job.

That was encouraging to hear, and gave me much more perspective than I had before.

These last couple months I’ve decided to pump the brakes on applying to jobs and cold-outreaching ad nauseam, and using my time to get more experience points. It’s one thing to talk a good game, but it’s something totally different when you’re confronted with a question about what you’ve built in a specific language or framework.

I have a lot of experience in applying for jobs and making cold outreach connections, but here are some questions I wish I could have answered better:

  • What front-end frameworks do you have experience in?
  • Describe what you’ve built in Ruby on Rails.
  • What’s your experience with AWS?
  • Have you written tests for your projects?
  • What kinds of custom SQL commands have you written for your projects?
  • Describe your design process.

Naturally, these are all questions I can practice between interviews, but when my experience with some of these things only equates to “exposure” at best, it makes it tough to provide a slam dunk of an answer.

It’s overwhelming, for sure, but not an impossible task. My Dev Bootcamp education has made it possible for me to grasp these concepts easily and quickly (this is a relative term for me, a slow deliberate learner).

Here are a few things I’ve recently done to gain more experience points:

  • Learned the basics of Sass and refactored the CSS from a Rails project into Sass.
  • Tricked out the front end of WatchNext, making it far more dynamic, updating data on the page using JavaScript and AJAX.
  • Practiced with CSS animations and grids (also on WatchNext).
  • Incorporating the Twilio API into WatchNext, learning how to send a user’s movie list in a readable format to their phone via SMS, as well as handling errors accordingly.
  • I even asked a question regarding error handling on Stack Overflow, and got an answer from a real live Twilio developer evangelist! It was my first Stack Overflow question and since it got answered, I unlocked some cool achievements with my profile. ¯\_(ツ)_/¯
  • Continued my Lynda.com course on front-end development (lots of review to help me galvanize the basics and learn concepts I glossed over before).

In addition, I have enjoyed going to Node School Oakland’s monthly workshops, surrounded by super nice people and hella bomb pizza.

I also had a great time at the National Day of Civic Hacking last weekend and hope to attend some Open Oakland meetings. (Peep my big, dumb head at the bottom of this pic. Wouldn’t you love to have QR codes around town so you could see what was happening? That was my contribution!)

I’ve been volunteering two days a week with ScriptEd, an amazing organization that brings opportunities to learn code to under-resourced schools. It took us a while to get our numbers up at Skyline High School (where I teach), but we finally have a good-sized class!***

*** Side note: We are still looking for volunteers in the Oakland area! It’s super fun and super chill, not to mention hella rewarding! DM me for details. ;-)

I hope this article brings some encouragement for my fellow junior devs. I’ll be the first to admit that it’s easy to feel overwhelmed, discouraged, that everything you do is never enough, and to resort to sleeping in till noon and scrolling down Twitter for another hour to escape that yucky feeling.

Being (f)unemployed has been a personal growth experience, where I’ve learned how counter-productive it is to have signposts for progress. Getting rid of evaluations of perceived progress is not an easy task for a perfectionist like me.

I expected to be employed X months after graduation, and when that didn’t happen (in fact, far from it), it sucked. Money gets tight, you feel powerless, and you begin to expect the worst (like moving back home with the parents).

Even if I do run out of money and I do have to move home, I’m okay with that. I know I made the right choice with my career path and I’m not afraid to fail 1000 times until I finally succeed.

Goonies never say “die.”