But First, Don’t Do the Dishes

This is a guest post from Sonja Parsell. Enjoy.

Dear Developer,

Don’t misinterpret a small distraction, or even a big disaster, as a “sign” that coding isn’t for you.

There were definitely times in my journey when a break in learning was completely justified, but by no means should I have seen it as a reason to quit, or that I was missing the message that I didn’t have what it takes to be a developer.

Thanks to a lot of personal reflection, some low-tech research about my habits, behaviors and values, and not a small amount of tough love, I am happy with my progress now, even though it’s taken years to get here.

Maybe you’re struggling with something similar?

Don’t sweat DO the small stuff.

No outside factor is going to make you more productive, and if you need a certain atmosphere to be at your best, you’re not truly in control of yourself.

Rachel Hollis

I used to feel like the house had to be tidy before my mind was clear to sit down to learn/code. If I couldn’t get those tasks done, how would I ever have time to hold down a software engineering job?

My habit of clearing up the breakfast dishes, tidying up after the whirlwind of getting kids off to school, and letting the “silent do-do list” (totally worth a Google) shout at me was definitely keeping me from maximizing the best time I had to learn to code. I knew if I didn’t squeeze some coding practice in by 10:00 AM, it was likely not going to happen that day. 

Those chores were a waste of my best hours. I learned to walk away from the mess in the kitchen (it was hard at first) and I now spend my most productive hours on my most important goal: becoming a software engineer.

Because really, there will always be dishes and laundry. I really didn’t mean to give them priority. 

Never enough time.

You can’t see the silver lining through victim goggles.

Jen Sincero

I used to think I would never have enough time to learn enough to get hired. Who was going to employ me as a career-changer over 40?

Running is my go-to form of exercise because it’s one of the only things in life I get “enough” of in a short amount of time. At some point, I am tired and I have to stop. That feeling rarely comes when I’m writing code.

As a SAHP (stay at home parent) for the last eight years, my time hardly feels like it’s my own. But everyone has the same 24 hours in a day, right? How could I feel so unproductive?

To solve this, I started with a basic Excel spreadsheet by listing all the things I wanted to do, or were my responsibility (household tasks, volunteering, hobbies, learning objectives, social commitments, family obligations, after school activities, etc.). It seemed endless. No wonder I wasn’t actually doing any of it consistently or well!

After keeping track for a few weeks of what I actually participated in each day, the results were eye-opening. I now had a map of how I spent my time and, most importantly, where I could save it.

The four biggest changes I made to my days were:

  1. Saying “No.” or “Not now, maybe later.” to anything that would interfere with my best coding hours: socializing, volunteering and doctors appointments were strictly scheduled for late afternoons or weekends only.
  2. Waking up at 5:00 AM to have a few quiet hours to myself. This was transformative in how I felt about my progress (by the time I ate breakfast, I had already coded for two hours!) and how the day progressed. 
  3. Giving up a few things. I put a few hobbies on hold, graciously backed out of friendships and groups that didn’t make me happy, and even taught my kids to make their own breakfast and pack their own lunch.
  4. Finding what to learn, when. I lined up coding podcasts for meal prep time. I caught up on all my Slack groups while waiting for the kettle to boil. I quit social media for periods at a time (apart from Twitter – all tech related for me). This helped to keep me focused but not burned out from just sitting at a screen, trying to learn in a silo.

Because really, you have more time than you think you do. You can’t do everything, but you can do anything you set your mind to. Spend your time wisely.

“You want to make websites??”

The first stage of forming an ambition requires imagining yourself in a role that requires skill and that exists outside of the domestic sphere.

Anna Fels, “Necessary Dreams – Ambition in Women’s Changing Lives

I used to think my family and friends didn’t understand what I was trying to do or even why. So why on earth did I think it was a good idea? I must be crazy.

My friends said things like “You want to do WHAT? You’re training at a bootcamp for a nuclear what?”. (True story.) And there were giggles, looks of confusion, and eventually, they would change the subject, still in the dark about my goal.

My wonderful spouse thought it was an interesting hobby, but wasn’t excited to make space for it if my studying schedule interfered with the division of household tasks.

Through an amazing “Moms in Tech” slack group, I found hundreds of women trying to do what I am. We were all struggling with the same imposter syndrome, were misunderstood by loved ones (at some point in our journeys), and were filled with self-doubt. I decided to enroll in my coding bootcamp on the heels of a meaningful discussion with these women over Slack. I’ll be eternally grateful for their input, and I’m determined to pay back the favor someday to anyone who needs a sounding board.

Because really, your family and friends may never understand what you are trying to do. That’s why the coding community is so critical to your success. Just jump in and find your people. I promise they are looking for someone just like you.

Make progress every day.

It’s not complicated, it’s just unfamiliar.

fellow software engineering bootcamp student to whom I am eternally grateful and wish I knew your name

I used to feel like a failure for not achieving the coding goals I made each day, even if they were SMART goals. If I can’t figure this out, how am I going to move on?

You might want to finish a small feature but when you’re a newbie coder, nothing is linear. First, you need to know what 1a, 1b, and 1c mean, with the right syntax, and know what the errors are telling you, before you can even get to B. That’s NORMAL and it can take a lot of time.

What helped:

  1. Keeping a journal of what I worked on every day. It helps to see your progress in words. And it reminds you of what you learned. Recall is an important part of learning. 
  2. Realizing I had too many things going at once. As a newbie, you feel the pressure – excitement even – to learn all the things at the same time. It’s truly a discipline (and worthy of practicing) to be able to focus on one language, complete one tutorial, or to build one thing at a time.
  3. Repeating a course or an exercise doesn’t mean you’re not learning the concept or syntax. I know I need to see it, read it, watch it and then write it – at least 3x – before it feels familiar.

Because really, you’re still successful if you make consistent progress, not specific goals.

Driving with the brakes on.

Be strict about your goal, but flexible in how you get there.

Rachel Hollis, Girl Stop Apologizing

I used to think that when I had to take weeks or even months off from coding to take care of myself or my family, it was the ultimate sign I should quit. What else could it possibly mean?

I’ve been learning through babies and children under foot, a trans-Atlantic move, a brain hemorrhage, recovering from a brain hemorrhage and vision impairment, and, just two weeks after I spent some serious money by enrolling in a bootcamp, the pandemic hit. All the time I had reserved to finish the program, became dedicated to more housekeeping and homeschooling than ever seemed possible.

But six months into 2020, I was still totally committed to, and absolutely in love with my studies and — guess what – I was finally convinced that this is what I should be doing.

Yes, it took a pandemic.

Because really, changing your life is SO HARD. You just have to work harder. And you can, you just might be lining up at the start more times than you originally thought.

If I belong here, you belong here.

Regret is the thing we should fear the most. Failure is an answer. Rejection is an answer. Regret is an eternal question you will never have the answer to.

Trevor Noah, Trevor Noah: Born a Crime

We are our own worst enemies and often close doors that aren’t ours to close. Only you know exactly why you started this coding journey, and that’s all that matters. Don’t let anything or anyone stop you. 

Especially those dishes.

— Sonja

Sonja Parsell is nearly finished with her software engineering bootcamp. After 15 years on Wall Street working in various finance and operational roles, she’s beyond excited to pursue an engineering career in blockchain. You can read more about her story.

How I Got a Job Two Weeks After My Coding Bootcamp

This is a guest post from Randall Kenna. Enjoy.

Dear new developer,

Two weeks after I graduated my coding bootcamp, I had an offer. Two weeks after that, I started my first engineering job at a small startup.

Here are some of the strategies I used.

Treat your job search like it’s your job.

I was exhausted after I graduated from my bootcamp. But I had spent more than$15,000 on tuition and living in San Francisco so I knew I needed to get a job quickly to prove the financial investment was worth it. It was so tempting to just spend those two weeks napping on my couch and recovering from the most grueling process of my life but using the momentum I had from graduating the bootcamp was critical. I had read about a lot of students that had let their skills get rusty and it had taken 6–12 months for them to find a job.

From the hours of 9AM to 6PM, I was job hunting. I was obsessively updating my resume, finding new jobs, reaching out to connections, finding meetups to attend, and honing my skills. After 6PM, I wouldn’t respond to recruiter emails or do any prep work for interviews. I used that time to recuperate and prepare for the next day.

Optimizing my LinkedIn

The company that I ultimately ended up taking an offer at actually found me through my LinkedIn. For all the applications that I sent and meetups that I attended, they ended up finding me and asking me to come in for an interview.

I filled out my LinkedIn with my prior jobs to show that even though I didn’t have a ton of engineering experience, I had a past career where I had been paid to code a little in some of my past jobs. I added every course I had taken and every certification that I had gotten during the bootcamp to show that I was very interested in engineering and it wasn’t just a job to me.

Quickly moving on from companies that weren’t a fit

A few companies had interview processes that were equivalent to Google. They wanted a coding bootcamp graduate to be able to solve complex algorithms that even a software engineer with a CS degree and years of experience would have struggled to complete.

I would have spent so much time preparing for just one interview at one company when instead I could use that time to go through the interview process at several companies. I told the company that the process was far too intense for a junior engineer and moved on.

You don’t have to use this strategy however if you’re willing to put in a lot of time learning algorithms and focusing on building some CS foundations. Some people in my cohort focused on their algorithm skills and it took a little longer to find a job, but they started out with a better title and higher pay.

Build a coding portfolio

Thankfully, my coding bootcamp had helped me create a large portfolio with several applications. I was able to take this to prospective companies and discuss what I had learned during the project. In my final project, I had focused mostly on frontend so I took that work to companies and detailed exactly what I had worked on.

If you don’t have a portfolio yet, just get started on something small and push it up to GitHub. Each time you create a new project, challenge yourself to make it a little more complex than the last project.

Proving I was eager (and desperate) to learn

Two companies told me I could build a project in the framework that I was most comfortable in. But I knew that if I spent a little time learning the framework that they used, I would improve my odds of standing out.

Over the weekend, I taught myself the framework one company used and built a small (and very barely working) app that used it. I was able to discuss the principles of the framework and even though my app broke during the demo, I got the job.

This was a risky strategy because I ended up not spending any time learning the other framework for the other company but it worked out in the end when I received an offer from the company.

Focusing on my strengths and not my weaknesses

I knew that I wasn’t going to do super well at companies that focused on algorithms and prioritized having a CS background, so I intentionally found companies that wanted to focus on mentorship and had real world interviews.

In the interviews, I discussed how I had prior career experience that would benefit them if they hired me and I had been coding at those jobs as much as I could.

It definitely wasn’t easy but anyone can get a job in coding if you treat your job search as if it’s your job and keep improving your skills.

Sincerely,

Randall

This post was originally published at RandallKanna.com.

Randall Kanna is a Senior Software Engineer at BaseHQ, speaker and O’Reilly author. She’s formerly worked at companies such as Eventbrite, and Pandora.

Don’t be afraid to “fail”

This is a guest post from Cierra Nease. Enjoy.

Dear new developer,

“Failures” as a new developer are plenty — but you might be asking, why is “failures” in quotes? To fail something is dependent upon one’s perspective. The only true failure is to quit working towards success. Every failure brings a small success in that you learn what the right answer is not. How can you problem solve without a way of marking off solutions that do not work? A failure is simply a solution that didn’t work at that specific time.

We can all talk about how learning and growth come from having failures, but it’s hard to remember that when you feel like you are a failure. Failures do not inherently make the person a failure, and it can be hard to make that distinction in the moment. Sometimes we need someone else to remind us of this.

I’ve had a lot of people in life reiterate this concept to me. The most recent person was a fellow developer named Mike on the Denver light rail. It’s funny what will happen when people participate in communicating and interacting with each other, but that is for another blog post entirely. For now, let’s go back to Mike. Mike overheard me talking to another passenger about being in a bootcamp. When I finished my conversation, he handed me a card and said he’d love to answer any questions I have about becoming a developer. I elaborated on some of my bootcamp experience, which happens to be full of failures.

Mike expressed his number one piece of advice for any developer, telling me: “whatever you do, don’t be afraid to fail.” We started talking about this in depth, and it really resonated with me for the rest of the evening. As a new developer, you really only see senior developers’ successes. Each developer goes through their own learning process which does include failures.

The failures that lead to success don’t stop when you become a “better” developer. If you are looking for a point when you quit failing as a developer, then you are looking for the wrong thing. The more you fail, the more you learn. The more you learn, the more you grow. The more you grow, the better the developer you become.

As a newer developer, I look forward to all of the opportunities to learn, grow, and accept my failures as the wrong solution instead of accepting them as a personal characteristic.

Sincerely,

Cierra

Cierra Nease is currently studying software development. She blogs at Cierra Codes 101.

It will turn out mostly fine… if you have the passion

This is a guest post from Jenn Chu. Enjoy.

‘Passion is one great force that unleashes creativity, because if you’re passionate about something, then you’re more willing to take risks’
~Yo-Yo Ma

Dear new developer,

I’ve always taken the quote above to heart… fast-shooting myself into the named camp of ‘Career Switchers` when talking about entry into the world of development. I’ve majored in Mechanical Engineer, spent 10 years in the Oil Industry, and just the last year and a half, really immersed myself into development.

I started at a Bootcamp part-time, got the certificate, quit my job, moved to a new city, worked as a Bootcamp TA and then finally landed my first job as an Associate Developer. It definitely wasn’t an easy journey, but I was passionate about this new life decision and I became obsessed. If not for the passion that led to a slight obsession, it would have been 10x harder to get to where I am.

For a new developer starting out, I’d love to tell you that it will turn out just fine… it mostly does… if you are passionate and have the drive. Learning new technology is not the only thing you should do to give you the edge. You must also go out, meet people, network, make projects, breathe… and then repeat. Learn the technology by finding out how it works more so than just watching tutorials. Meet the community and find coding and project buddies. Make projects for ideas to improve your life, or the life of others.

What I found most helpful in this whole process is having a mentor. Find a like-minded individual that is genuine and genuinely wants to be invested in your new journey. There is so much experience and knowledge that can be shared between both individuals, it truly is a beneficial experience for all involved.

Again, never stop learning, doing, networking and above all, doing what you do, what you are passionate about. The light at the end of the tunnel starts to get brighter and brighter with each passing day, have faith and take the risks! Life is too short otherwise.

– Jenn

Jenn Chu is a software Developer passionate about good design and building simple solutions that will enhance the end user’s experience. She is most excited to bring the diverse community together through collaboration, communication, and connections.