How I Earned a Second Bachelor‘s Degree and 5 Developer Certifications in One Year While Working Full-Time and Raising Two Kids

Man working on laptop at night

Hi, I‘m Josh. I‘m a 35-year-old full-stack web developer. A year ago, my resume looked very different. I had a bachelor‘s degree in a non-tech field, was working in an unrelated industry, and had no professional programming experience.

Today, I have a second bachelor‘s degree in software development, 5 respected developer certifications, and a growing portfolio of coding projects. I accomplished all of this in just 12 months while continuing to work full-time and help raise my two young children.

Here‘s how I did it, and how you can too.

My Motivation to Make a Career Change

A year ago I found myself feeling stuck in my career. I was working in marketing, a field I had fallen into rather than actively chosen. While I didn‘t dislike my job, I couldn‘t see myself doing it long-term. The work wasn‘t aligned with my interests or passions.

I had taken a couple introductory programming courses in college and really enjoyed them. I loved the challenge of solving problems with code and the satisfaction of making something interactive. I started dabbling in coding again in my free time, working through online tutorials and building small projects.

As I spent more time coding, I began to see it as a potential path forward for my career. Software development would allow me to do mentally stimulating work that I was passionate about, with strong job prospects and the opportunity for continuous learning. I knew it was what I wanted to do.

But I had a family to support and couldn‘t afford to quit my job and start over. I needed to find a way to pick up the necessary skills and credentials to make the career switch while still bringing in an income.

Finding the Right Educational Path

I started researching my options for learning software development. I considered doing a coding bootcamp, but most of them required a full-time commitment for several months which wasn‘t feasible for me. I also looked into self-directed learning using online resources, but I worried that I wouldn‘t have the structure and support I needed to reach my goals.

Eventually, I found what seemed to be the perfect solution – a competency-based online degree program in software development from Western Governors University.

The program would allow me to earn a legitimate bachelor‘s degree and several valuable certifications, but on a flexible schedule that I could fit around my existing responsibilities. And because progress was based on demonstrating competency rather than logging classroom hours, I could potentially accelerate my completion by dedicating more time to studying.

The curriculum included courses in key topics like data structures and algorithms, web development, database management, and software engineering. It also incorporated industry certifications from CompTIA, CIW, and Oracle, giving me the chance to earn credentials that would be immediately recognizable to employers.

I did the math on the cost – at under $7000 per year including all fees and study materials, it was significantly more affordable than either a second traditional bachelor‘s degree or a typical coding bootcamp. I would be able to cash flow the tuition with my current job, finishing the degree with no additional debt.

WGU‘s online, competency-based model seemed tailor-made for someone in my situation. I eagerly applied and was accepted. I set an ambitious goal for myself – finishing the entire bachelor‘s degree in one year while continuing to work full-time and help raise my kids. It would take sacrifice and a lot of hard work, but I was determined to make it happen.

Designing My Learning Schedule

To reach my goal of completing the degree in one year, I knew I would have to be strategic about how I spent my time. With a full-time job, family responsibilities, and household management, I couldn‘t afford to waste an hour.

I decided to approach my studies like a second job, setting aside specific time blocks for coursework and holding myself accountable to that schedule. Here‘s what a typical week looked like:

Google Calendar schedule

  • Blue blocks were time with my family
  • Pink represented my regular working hours
  • Yellow was time earmarked for studying
  • Green blocks were for personal projects and extra coding practice

Weekdays, I would study for an hour before work, on my lunch break, and for 2-3 hours after putting my kids to bed. On weekends, I dedicated larger 4-6 hour blocks to schoolwork and projects. All together, this added up to 35-40 hours per week on top of my regular job – essentially a second full-time workload.

Sticking to this schedule wasn‘t easy. It required saying no to social invitations, missing out on downtime with my wife after the kids were asleep, and being fiercely protective of my calendar. But I knew it was temporary, and the payoff would be worth it.

To maximize my study time, I looked for pockets of wasted time in my day where I could fit in a few extra minutes of learning. I downloaded course materials to my phone so I could study on the go. Sitting in line waiting to pick up my kids from school, I‘d flip through flashcards. Cooking dinner, I‘d listen to tech podcasts. Small moments like these added up.

Studying Smarter, Not Just Harder

The competency-based structure of my program meant that I could progress as quickly as I could prove mastery of the material. Passing an exam or completing a project moved me on to the next course – no arbitrary seat time requirements. If I could learn the concepts efficiently, I could accelerate my pace.

I developed a system for determining the most critical concepts to focus on for each course, using the competencies listed in the syllabus as a guide. I would map out the key topics and skills, then ruthlessly cut out the fluff to narrow my learning scope.

Often, I found that I could grasp 80% of the testable material by focusing intently on just 20% of a course‘s content. The other 80% might be helpful context, but I could demonstrate competency without getting lost in the weeds of every subtopic.

For example, when I took a course on data structures and algorithms, I spent the bulk of my study time implementing core concepts in code, like:

  • Linked lists
  • Stacks and queues
  • Trees and graphs
  • Sorting algorithms like quicksort and mergesort
  • Search algorithms like breadth-first and depth-first search

I practiced applying these concepts in common interview-style problems. I built small projects incorporating each data structure and algorithm to cement my understanding.

When it came time to take the exam, I was well prepared, having focused my efforts on the most important skills. I passed the course in just two weeks of intensive study.

I used this strategy for each course, finishing most in 2-4 weeks rather than the traditional 16-week semester timeline. Over the year, this focused approach allowed me to complete 26 courses, 5 certifications, and my capstone project.

Expanding My Skill Set Beyond the Classroom

As efficient as my coursework was, I knew a degree alone wouldn‘t make me job-ready. To truly succeed as a software developer, I needed practical skills and a portfolio of completed projects. So alongside my studies, I worked on sharpening my coding abilities through hands-on experience.

One of my most valuable resources was freeCodeCamp‘s curriculum. In parallel with my degree coursework, I completed freeCodeCamp‘s front-end development, data visualization, and back-end development certifications.

These certifications involved building progressively complex projects using in-demand technologies like:

  • HTML5 and CSS3
  • JavaScript
  • jQuery
  • React and Redux
  • Node.js and Express
  • MongoDB
  • APIs and microservices

Each project pushed me to apply what I was learning in a practical context. I built a pomodoro clock to practice jQuery and web design fundamentals. A search tool for stock photos let me flex my React skills and interact with a third-party API. A ingredient price calculator was an opportunity to learn Node.js, Express, and MongoDB.

Search tool for stock photos screenshot

These projects formed the foundation of my developer portfolio, demonstrating my growing skill set and giving me work samples to showcase to potential employers. They supplemented the theoretical knowledge from my coursework with hands-on proficiency.

Outside of building projects, I also made an effort to engage with the broader developer community. I followed tech blogs and forums, worked to understand industry trends and emerging technologies. I contributed to open source projects when I could, even if it was just writing documentation or fixing small bugs.

Bit by bit, I was developing my identity as a software developer, expanding my competencies beyond the classroom.

Overcoming Obstacles and Challenges

Juggling a second degree with a full-time job and family was one of the hardest things I‘ve ever done. Time management was a constant challenge. My wife shouldered more than her fair share of household duties. I missed birthdays, holidays, and time with my kids.

But as difficult as it was, I wouldn‘t trade the experience. Compressing the timeline forced me to push myself harder than I thought possible. I had to learn to be comfortable with discomfort, to embrace the struggle as part of the growth process.

There were many days when I was mentally and physically exhausted, wondering if I had taken on too much. Times when I bombed a test or spent hours stuck on a coding problem. Moments where I doubted my ability to reach my goal.

In those instances, I learned to reframe my mindset. I stopped seeing my struggles as a sign that I wasn‘t good enough, and started viewing them as evidence that I was tackling something challenging and worthwhile. Each failed attempt taught me something I could apply to the next effort.

This shift in perspective was key to my success. When I looked at the degree as an opportunity to see what I was capable of rather than a test I might fail, it allowed me to take risks and challenge myself. I stopped worrying so much about perfection, and focused on consistent forward progress.

Landing a Job as a Developer

As I neared the end of my degree, I started applying what I had learned to the job search. I began applying for developer roles, targeting positions that aligned with my skill set and where I could add value from day one.

I tailored my resume to highlight my technical competencies, relevant coursework and certifications. I built an online portfolio site showcasing my best projects. I studied common coding interview problems and did practice interviews with friends in the industry.

Portfolio website screenshot

I also focused on building my professional network, both online and in person. I joined local meetups, attended hackathons and workshops, and reached out to established developers for informational interviews. These connections exposed me to new technologies and job opportunities.

Three months after completing my degree, I landed an offer for a full-stack developer position at a fast-growing startup. The company was impressed by the speed at which I had picked up new skills, and valued the initiative I demonstrated through my portfolio projects.

It was a huge validation of the work I had put in. More than that, it was the start of an exciting new chapter in my career. I had successfully made the pivot into software development, proving to myself and others that it‘s never too late to change course and chase a new dream.

Reflections and Takeaways

My journey from marketing professional to software engineer wasn‘t easy. It required trade-offs, sacrifices, and a lot of hard work. There were many points along the way where I could have given up or scaled back my ambitions.

But I‘m glad I didn‘t. Pushing myself to learn faster and accomplish more than I thought possible taught me so much, not just about coding but about my own capabilities. It instilled in me a growth mindset, a belief that I could pick up new skills and reach new heights if I was willing to put in the effort.

More than the certifications or the job title, that mindset has been the most valuable result of this experience. I no longer place limits on what I can achieve based on my background or the expectations of others. I‘ve seen firsthand that I can learn anything if I‘m willing to struggle through the process.

So if you‘re considering a career change, or dreaming of picking up a new skill, I encourage you to set a scary goal and go after it with everything you have. Don‘t settle for the standard pace – challenge yourself to learn faster and accomplish more.

It won‘t be a linear or comfortable journey. You‘ll have moments of doubt and frustration. But if you stick with it, you‘ll come out the other side with new capabilities and a transformed sense of what you can achieve. The only limits are the ones you place on yourself.

Key Takeaways:

  1. Competency-based online degree programs can be a great option for career changers looking to pick up new skills on an accelerated timeline
  2. Time management and a structured study schedule are critical for balancing education with work and family responsibilities
  3. Focus on the 20% of concepts that deliver 80% of the learning value to efficiently master new topics
  4. Supplement theoretical knowledge with hands-on projects and engagement in the professional community
  5. Embrace the struggles and challenges as opportunities for growth and skill development
  6. Don‘t let a non-traditional background stop you from chasing new career goals – your initiative and achievements can speak louder than a standard path

Data Highlights:

Final Thoughts

My unconventional path to a software development career was paved with long days, short nights, and a lot of determination. By setting ambitious goals, seeking out efficient educational resources, and pushing myself beyond my comfort zone, I was able to achieve more than I ever thought possible.

But my story is far from unique. I‘m part of a growing wave of career changers using alternative education paths to break into the tech industry. Driven self-starters are learning to code through online degree programs, bootcamps, and independent study, landing jobs at top companies on the strength of their skills and initiative.

The key, I believe, is refusing to be limited by convention or other people‘s expectations. We live in an age of unprecedented access to educational resources and opportunities for self-directed learning. With the right mindset and work ethic, it‘s possible to learn at an accelerated pace and achieve extraordinary results.

So if you take one thing away from my experience, let it be this – never underestimate your own potential. Set big, scary, exciting goals. Push yourself harder than anyone expects. Embrace the challenges and struggles as part of the journey.

You are capable of so much more than you know. I can‘t wait to see what you achieve.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *