Considering A Career Change To Programming – How It All Happened

In my last post, I wrote about a potential layoff I was facing and the midlife crisis I suddenly found myself in.

From the beginning of December 2018 to the end of January 2019 (practically two months), I was lost, scared, and distressed about not knowing what I wanted to do with my life.

I was told I might get laid off in 3-6 months.

I tried to apply for different jobs but didn’t feel passionate about the jobs I seemed qualified for and their career trajectories. I didn’t get any offers either.

I have to preface this by saying that I know I am still in a privileged position with a full-time job and a happy family.

What I am experiencing is nowhere near the dire situations a lot of people and families are faced with.

But deep down, I still feel like something is missing in my life.

I feel a void I need to fill in terms of my career.

RelatedMy Time Has Come: Facing A Layoff – Lost, Scared & Self-pity

Codecademy

I started looking at the job description for the Business Analyst position which seemed to always require two particular skills that I didn’t have: Python and Structured Query Language (SQL).

I had heard of Python. It’s a computer programming language I had never even encountered in my life. I had never even heard of SQL.

At first, I just accepted the fact that I didn’t know those languages and pitied myself. In early February, however, I decided that I didn’t want to be in this state of self-pity and disorientation anymore. If anyone or anything was going to change my career and my life, then it had to be me.

I went online and found some YouTube videos about SQL and quickly lost interest after the first few minutes. After a couple of days, however, I forced myself to just start learning it again.

That’s when I found Codecademy. Codecademy offers a wide range of coding courses in Programming, Web Development, and Data Science. I signed up for the 7-day trial, looked up SQL courses, and started learning.

The courses were interactive and totally different from those SQL lectures I found on Youtube. “This isn’t so bad,” I told myself. The only problem was that I soon ran out of free SQL courses to study.

RelatedWhat If Everything I Ever Wanted Became A Reality

Falling in love

Then I switched to Python, something I thought was way over my head but had to force myself to learn. The moment I started typing those first lines of code on Codecademy, however, something instantly clicked.

I fell in love with Python.

From that day on, I was obsessed with Codecademy and Python, and I didn’t fully understand why. I wake up thinking about Python. The last thing I do before going to bed is learning Python. I think about what I learned about Python throughout the day.

I looked up podcasts about Python and female developers and started listening to them on my commute. And I realized that I was once again excited about life.

Python has cured my depression. And I have Codecademy to thank for it.

Reasons

I told Lily at The Frugal Gene about my newfound passion. Lily was super supportive and asked me why I liked Python.

That was a great question. Why do I like it?

After all, I had never had any computer programming experience before. I am definitely not a math wizard. My math experience in college ended with Calculus II. I decided not to take Calculus III because I heard it was difficult (something I still regret to this day).

For full disclosure, I have worked with R and STATA (statistical software packages) before, but I am in no way shape or form passionate about them.

As I reflected on Lily’s questions, I came up with the following answers:

— Codecademy makes it super interactive and fun to learn Python. After I learn a new concept, I get to type in the code and start solving problems right away instead of dozing off at a 20-minute lecture video on YouTube.

— The feeling of successfully solving a problem using code is so gratifying. It gives me adrenaline even late at night.

— I see how Python can be applicable to various fields, not just computer programming, such as data analysis, business, and entertainment. I got to learn about how an answering machine and a list of songs are programmed. I felt like I had discovered a whole new world I didn’t even know existed.

— People say Python is the easiest programming language to learn, especially for beginners, since it’s so similar to English (unlike C++, for example). If I had a hard time understanding the first few basic concepts of Python, I don’t think I would have enjoyed it as much.

— People also say that the courses on Codecademy are basic and thus easier to understand. I’m learning the basics, so it Codecademy can help me understand them, then I have no problem with that.

— For me, Python is like a foreign language. I love learning foreign languages, so it might be another reason why I’m fascinated by it. Right now, I feel like I’m just learning the basics of Python, and it’s like learning the vocab and grammar of a new language. I hope that one day I will know enough grammar and vocab to write an essay which will be equivalent to coding an app in Python.

As my 7-day trial was running out, I frantically researched other resources to see if I should pay for a subscription. I found many other websites that offer Python courses such as Coursera, Udemy, Udacity, Solo Learn, and Treehouse.

However, they are nowhere near as interactive as Codecademy. Plus, they only offer free intro classes, not the advanced ones. Another great free resource is Free Code Camp, but they don’t offer Python courses.

I decided that Codecademy was totally worth it and paid for an annual PRO subscription of $239.88 ($19.99 a month). I am all about finding free resources online, but I did my research and decided that Codecademy was the best fit for me.

Mr. FAF

After hearing me raving about Python for a few days, Mr. FAF started telling me stories about his colleagues and his friends who don’t have a degree in Computer Science but taught themselves how to code and became software engineers.

He then ended those stories with an offer: “If you finish those Python courses on Codecademy, I can coach you on the interview process to become a developer.”

My reaction was “What?!”.

At first, I thought Mr. FAF was joking, but he was dead serious. “Who would want to hire someone like me? That sounds like a waste of resources,” I told him. But Mr. FAF was adamant that I could totally do it if I put in the effort.

And I came up with a bunch of reasons why I thought it wouldn’t work. But Mr. FAF gave great responses to all of my concerns. Our conversation went something like this:

Me: I think I’m too old to learn how to code. I’m already 31 turning 32 in a couple of months.

–> Mr. FAF: It’s never too late to learn something. One of my teammates is 55, and we work well together.

Me: I don’t think I’m smart enough.

–> Mr. FAF: It’s not easy, and you have to work hard. But it’s doable. You just need to practice a lot.

Me: I didn’t learn Computer Science in college (or ever).

–> Mr. FAF: I usually get welcome emails about new colleagues. A lot of them are musicians, artists, and professionals from non-tech fields. You don’t need a degree in Computer Science to be a software engineer.

Me: What if I lose interest in it?

–> Mr. FAF: You will still learn a new skill which will open new doors for you. Even if you give up on it after a couple of months, you will still be ahead of yourself when you didn’t know anything about Python.

Me: We have a toddler and a 6-month infant. I have a full-time job. I don’t think I have time to learn Python.

–> Mr. FAF: You are already learning it. I can take over more housework and the kids so that you have more time to study.

Me: What makes you think I can be a developer?

–> Mr. FAF:  You have the determination and are willing to put in the effort. Plus, you have a great teacher. I believe I can guide you through the  interview process.

Mr. FAF wasn’t joking. He himself is a software engineer. Mr. FAF has a PhD in Computer Science and has taught various undergrad courses, so he knows how to teach. He also got job offers from Google and Amazon Web Services, so he must know the ins and outs of the technical interviews.

At this point, I was convinced.

Mr. FAF was being a wonderful and supportive husband. He encouraged me to further explore my interests and launch a new career which both of us knew would be challenging for me. I felt so touched and thankful.

I was sold.

Related: How to Deal with Spousal Envy

Commitment

I first started learning Python on February 9, 2019. I decided to follow the Computer Science path with relevant courses suggested by Codecademy.

Since then, I have been learning it every day. On weekdays, I will come home and do all the housework expected of a mom and a wife. I finish everything at 9 PM, and that’s when I start my Python lessons.

If I’m lucky, our baby will be asleep at that time. But on most days, she will stay awake, cry, or nurse. I don’t want to wait until the weekends to study, so I just hold her or nurse her in one hand and code with my other hand.

On the weekends, I try to put in at least about 10 hours of studying, practically anytime I have free time. That “free time” also consists mostly of me taking care of our newborn and nursing her.

Mr. FAF has been amazingly supportive, offering to take on more housework so that I can study.

Related: Why I Gave Up On A Lifelong Passion

Conclusion

I decided to give myself a year to learn Python and see what I can do with it. Even if I give up midway or lose momentum, I know I will have learned a new skill that’s applicable to various industries.

The potential job layoff turned out to be a blessing in disguise. I was forced to think long and hard about what I want out of life and what I can do to find myself and explore my potential.

And during this process, I realized what wonderful husband, mentor, and friend Mr. FAF was. I have always had a great resource right next to me but didn’t realize it.

I know many people have to pay thousands of dollars to get trained in programming, but I have a supportive and qualified teacher right next to me and who is available 24/7.

In the person finance community, we always talk about in-sourcing services to cut costs, and I can’t think of any better resource like Mr. FAF to help me learn coding. I still have to do the work, but it’s great to have a supportive mentor by my side who has a vested interest in my success.

It is a blessing I took for granted and didn’t full utilize.

No matter whether I can become a developer in the future, I know that I am indeed very lucky. I have all the resources that I need to build a better future for myself and my family. And the only thing I need to do now is buckle down and make it happen.

Related:

Would You Have Dated Your Partner If They Made $500,000/year?

Life With 2 Kids & Living With The FIL: An Update From Our Family

4 Things I’d Regret Not Doing If I Were To Die Tomorrow

How Being Poor Helps Me Be Happier In Life

Join Us For The Latest Update!



33 thoughts on “Considering A Career Change To Programming – How It All Happened”

  • Oh my gosh, this is so exciting! I’m thrilled you found something that sparks a passion you can pursue. Gahh, you must be so efficient with your time, I am SO impressed. Superwoman!

    Good for you for learning new skills while you’re still gainfully employed – I swear I’ve read 4 articles recently saying that’s the best time to expand your education. Way to go!

    • I think I read something similar too! It’s good to learn new skills when you still have a paycheck coming in every month. 😀

  • This is great! I made a half-hearted attempt at learning Python last fall, but I struggled a lot with it. Now I’m taking a $10 course through Udemy for SQL (you’re right, those two skills are in high demand), and concepts are starting to stick. I’ve realized, as an analyst, I need to pick up those basic concepts to stay relevant in my field. If you become a python pro, you’ll 100% be employable as a software engineer!! Mr.FAF is right, a lot of people come from non-tradition backgrounds and do just fine.
    I’m happy to see you’ve found something that has ignited your passion!

    • I had no idea you learned Python too! I am learning data structures right now, and it’s def not easy haha. But I really like that it’s challenging since I was just so bored with my life. I wanted something new and exciting.

      Udemy has so many great inexpensive courses! They have a full stack developer boot camp for $11 @_@ But if I’m not mistaken, it’s mainly video lectures. Is that right? I don’t know about you, but I tend to get distracted and tuned out while watching video lectures -_-

      I think I will need to learn SQL more while still learning Python. One of my friends just got offers as a data analyst at big companies and said that they mainly asked about her Python and SQL skills!

  • 👏👏👏

    Why CAN’T you?

    It’s also a lot easier to learn something when you know WHY. Tech and coding has a lot of applications not just involving work – like optimising your blog and numerous other uses. 😄

    Glad to hear that the story has a somewhat happier ending. As they say, either way you’ll be XYZ age, might as well work towards something you might/will enjoy.

    All the best, you’re chances are good because you’ll have an awesome tutor every step of the way. 🤙

    • Thank you, Will! I’m really happy I have a tutor right at home hehe. It will take me a while to use what I’m learning to improve my blog, but it’s an exciting thought! 😀

  • Python is pretty cool. I learned a bit when I was young, but never really got into it because work was too busy. It’s a great tool. I think it’s easier to learn because it’s a scripting language. It sounds like you’re enjoying it. That’s great.
    SQL is more of a database thing, right? I knew some SQL programmers when I was young. They have very nice career options. It sounds more intensive than Python, to me.
    Good luck!

    • I read that Python is great for newbies like me since it’s almost like English. I’m glad I didn’t start with a more complicated language since I would have given up so easily.

      You are right. SQL is to query data from relational databases. I have no feelings about it, but I can see why it’s a great tool 😀

  • OMG!!! I just started learning Python programming too and I am excited!!! I was thinking of learning SQL too. I also have no background whatsoever in computer science or programming. I just knew I wanted to learn something new as I am thinking of pursuing a career in that field. I am learning for free on youtube for now tho.

    What I do is resize the youtube video to half of my computer screen and then resize the Pycharm(the IDE I am using) to the other half of my screen so I can be working on what I am seeing. It’s the best way to learn from youtube. The youtuber I am learning from is Mosh Hamedani (Programming with Mosh). He has a new 6-hour python video tutorial for beginners if anyone is interested.

    It’s great that you have decided to learn this new skill, you love it and you’re committed to it! Goodluck!!!

    • Oh my that’s a great way to learn from YouTube! I remember when I was watching the SQL video, they guy started mentioning databases and such, and I started to zone out lol. I’ll check out his channel 😀

  • I totally agree with Mr FAF, I’ve seen much older guys with self caught experience and they went straight into the field and made great money. It’s very much in demand for anyone one with an open mind! It’s a very good move and the price is more an investment then a purchase. Keep going!! 👌👌🦄

  • This is awesome! Python is an excellent choice to learn too – there’s so much you can do with it. Web development, devops, machine learning, app dev, API creation, data science – lots of avenues.

    Do you have a project in mind you want to try to build with Python? Might be too early for that so far, but be curious if you’re leaning towards a specific subset of Python that you really enjoy?

    Back-end web developer is one of the best starting points in terms of the sheer number of jobs available. With your math/stats background though you have a bunch of options!

    • Hi Adam! Thanks for dropping by. I am currently learning the fundamentals of Python (and computer science) like data structures, so I’m not sure what subset of Python I like yet. My goal right now is just to understand those linear and complex structures and know how to use Python for those structures. I do have a couple of ideas floating in my head as I learn, but I think it will take me a while to build something meaningful.

      I actually had a discussion about backend and fullstack/frontend with Mr. FAF. I see that those boot camps always train full stack developers. But Mr. FAF told me to just stick with backend and Python. I wonder what your thoughts are on that.

  • This is awesome FAF! Python is a great 1st language to learn, it was mine as well! It’s never too late.

    I would take a course on data structure + algorithms (MIT has really good open source free ones) so that you’ll be more competitive. SWE interviews test heavily on that. If you love solving puzzles, check out Leetcode/Hackerrank/TopCoder and see if you can solve the problems. It’s a lot of fun IMO.

    • Hi Olivia, it’s great to hear that you also enjoyed it. Did you learn other programming languages after Python? Do you use it at work as well (I heard/read somewhere that you are working on Wall Street).

      Codecademy offers courses on data structures and algorithms as well, but I think those are basic (though still very difficult to grasp). I will need to take more courses outside of Codecademy to really understand those concepts. I’ll check out the MIT sources.

      I have heard of Leetcode. Mr. FAF actually used it to prepare for his interviews. I recently discovered Code Wars and thought it was fun (and potentially addictive) too. Will check out the two other sites you mentioned. Thanks for the suggestions!

      • After Python there came Java and C, which are popular languages people use in tech. They taught us this after Python because it helped us understand memory allocation (Python has a built-in garbage collector). I also learned LISP and did some stuff with MIPS for a class but hated it and don’t remember it. LISP is very esoteric and the closest I see to a company using it is Jane Street (but they use OCaml, which is somewhat similar). I only ever did CS in uni because I got hired onto Wall Street at the end of my summer internship jr year. Our Quants script the backend (all non-US grad Phds) but when I need to analyze things I write scripts in Pandas/Python, VBA (Excel code), R. Nothing complex, but then again I’m not a SWE, I just use code to help me automate things I work on sometimes. I do sometimes modify html/css code on my blog, but that isn’t really a scripting language (though devs get paid well for this too and is another path you can go down if you’re interested). I’m trying to learn React/D3 right now for fun, so we’ll see if I can master other parts of the stack.

        I think it depends on which company you want to work for. If you understand the basic data structures, you might be able to pass some LC Easy-Med but you won’t be able to get into FAANG (or apparently Uber/Airbnb bc their interviews are even harder). I hear their interviews are much harder with LC Hard+ and requires knowledge of adv algorithms (so MIT course might be a good idea here if you want to work for those companies). But I’m sure Mr. FAF knows much more than I!

        • Your jobs sounds so cool! I had no idea you did CS. That’s awesome!

          Mr. FAF told me he doesn’t know much about frontend. He does backend stuff and advised me to go into backend. I have no idea what I’m doing, so I’ll take his advice for now. My hope right now is that I’ll get a Junior Developer job at whatever company is willing to hire me. But I really need to get the fundamentals down first before dreaming about anything big. I really appreciate your advice! Thank you! xoxo

  • Wow! So impressive that you are learning Python. I’m sure by this time next year if you stick with it, you’ll have learned so much and have so much more opportunity. I like your husbands enthusiasm and encouragement!

    Sam

    • Hi Sam, it’s great to see your comment. I like to think this is how Mr. FAF is making up for the time when he didn’t want to help me with blogging hehe. I guess it’s just not something he’s good at or interested in. 😀

  • So cool Ms FAF!! Great that you are learning Python, I was looking into taking an online Python introductory course and may take one later this year. I took a couple of SQL courses and like to query the data from other databases. It’s a nice resume builder and plus you’re never too old to learn these new skills.
    With the support you are getting from Mr. FAF you may just have a career in programming within the next year if your really like it.

    • Yay! I think you’ll like it too. I don’t know if it’s just me, but I see SQL mentioned in more job postings than I can remember. It must be a powerful tool to be so popular!

  • Congrats on the new direction — and the new skills you’re picking up! I don’t have the head/patience for coding, so I’m not even tempted to try. But I’m always impressed by other people who give it a go.

    • Thank you! You never know. You might end up liking coding if you give it a try. The worst that can happen is that you’ll lose a couple of hours, but you’ll know for sure you don’t like it. I was 100% sure I didn’t want to learn any programming languages before I started Python 😀

  • I’m happy to see you are thinking of a similar career change as I went through after finishing my phd. Continue that path and to kerp up your motivation – if you ever need examples of people who turned their careers around 180 degrees in their 30’s and 40’s and became software developers, I have plenty of stories to share. Great start!

    I’m a business analyst/system analyst and phyton was my first programming language I learned. But just know that you don’t actually need to use phyton as a business or system analyst, it is recommended that you are familiar with basic programming concepts in whatever language because it helps to think and discuss stuff through with developers. Knowing just a little SQL makes life easier as an analyst but understanding data models (to know how to read and compose them) is 100x more important.

    Business analyst typically works in the same company where the client is and applies business process management tools (extremely complicated stuff and university education in BPM is needed) to redesign business processes and help the company to reach its objectives.

    System analyst designes new applications and typically works in a software company. From ideas and prototypes to data models and documentation. I have a feeling you can’t quite tell the difference of the two.

    Data analyst, however, is a totally different role where you’d need to actually apply SQL and phyton to play with data. Using R instead of phyton is fine too.

    • Thank you so much for the insight! You are totally right. I didn’t know the difference between a business analyst and a system analyst. I actually looked up Business Analytics courses on Coursera and was about to take one before I decided to focus my energy on Python. There’s just so much to learn! 🙂

  • I just stumbled on your blog yesterday and got intrigued by your long distance marriage posts. I am in a similar situation (3-4 years long distance with my girlfriend in JP – I am from Europe).

    I find it awesome that you picked up Python and SQL. I can’ t encourage you enough. I think the most awesome thing about programming are the meta skills you learn. That there is a solution for basically any problem out there. I also think that programming is an incredibly creative process and it makes happy to see that other people develop a passion for it – not just something to do to pay the bills. I *really* encourage you to stick with it and it will help transform your thinking in areas beyond computer science itself.

  • Love following your blog! You are so lucky that there are so many online resources for retraining and learning coding. And how cool that Mr. FAF can help. I think it is a great career switch for you. I went back to school at 32 for a grad degree in medicine and it was so rewarding (and unfortunately expensive). But it has allowed me to work part time with flexible hours and still make great money. Good luck!

    • Thank you, Thuy! It’s really admirable that you made such a big investment in your education and your future. I’m glad it’s working out great for you. 🙂

Leave a Reply

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