i finally got a software engineering job

Joma Tech| 00:11:44|Mar 26, 2026
Chapters7
The speaker reveals securing a software engineering offer and notes it is from a Fang Gulad affiliated company, sharing the compensation details and his intent to stay.

Joma Tech shares the gritty, honest path to landing a software engineering job, from relentless practice to smart interview prep and pivotal career choices.

Summary

Joma Tech’s latest update candidly chronicles the grind of moving from data science to software engineering. He recalls the anxiety of interviews, the habit of endless LeetCode practice, and the shift from coding for fun to coding under pressure with purpose. He explains how he refreshed Python 3, tackled 30–40 easy questions, and gradually moved to medium problems, all while juggling a full-time job. The story then shifts to strategy: refining his resume for software roles, leveraging a long-standing recruitment network, and setting deadlines to stay disciplined. He details the interview prep toolkit—Elements of Programming Interviews in Python, whiteboard-style pen-and-paper practice, Glassdoor question mining, and colorfully noting which companies favor particular topics. The payoff comes with a first job offer and a compensation package totaling $278k in year one (plus signing bonuses), earned through relentless preparation, referrals, and smart negotiation. Finally, he gives a shout-out to supportive roommates and friends who kept him grounded through the hard days, and he hints at sharing more about the new role after a cooling-off period. The video blends practical steps with personal resilience, illustrating that consistent practice, networking, and targeted study can turn a dream job into reality.

Key Takeaways

  • Refresh skills to match target roles: he migrated from Python 2 to Python 3 and relearned syntax, comprehensions, and libraries in about 2 days.

Who Is This For?

Aspiring software engineers and data scientists aiming to switch to engineering roles, especially those who juggle full-time work while preparing for coding interviews.

Notable Quotes

"Yes, yes, yes. So, some of you probably already know. Uh, I finally got a software engineering job now."
Opening confirmation of landing the job and setting the hopeful tone.
"I hated interviewing. Well, I mean, actually, I I think I hate before interviewing because that's when you get the most stressed, but then when you're interviewing and if you're actually doing really well, it actually feels kind of good."
Conveys the emotional rollercoaster of the interview process.
"I asked them about different companies, what the culture was like, what was the pay, how long does it take for the recruiters to respond back, what text they use, etc., etc."
Shows how he gathered intel on target companies and interview processes.
"I bought the book Elements of Programming Interviews in Python because I wanted to practice coding using a pen and paper"
Highlights the pen-and-paper prep approach to simulate whiteboard interviews.
"Seeing it now, it doesn't sound like much. It's just study and that's it. But while I was studying, holy shit I felt like…"
Illustrates the intense mental effort and emotional strain behind the prep.

Questions This Video Answers

  • how did joma tech prepare for software engineering interviews
  • what is the Elements of Programming Interviews book about and is it worth it for Python
  • how many LeetCode questions should I practice for a software engineer interview
  • how can I leverage a recruiter network to land software engineering roles
  • what compensation should I expect when transitioning from data science to software engineering
Joma TechSoftware Engineering JobLeetCode preparationData Scientist to Software Engineer transitionPython 3Elements of Programming InterviewsWhiteboard interviewingNetwork referralsSalary negotiationFacebook/LinkedIn background
Full Transcript
Yes, yes, yes. So, some of you probably already know. Uh, I finally got a software engineering job now. I'm super grateful and super relieved that I don't have to interview anymore. I mean, interviewing is super stressful and it's not that fun. Like, I I really hate interviewing. Well, I mean, actually, I I think I hate before interviewing because that's when you get the most stressed, but then when you're interviewing and if you're actually doing really well, it actually feels kind of good. It feels kind of good. But I'm glad I don't need to leak code anymore. I mean, I did it so much that it kind of became a habit every day. I just go home, le code a little bit. And a part of me kind of a part of me kind of wants to just continually coding every day just to keep my skills fresh, my interviewing skills fresh. You know, you never know if you want to switch jobs or not. So, the reason why I didn't say anything for the longest time is because I didn't want to jinx it. I wanted everything to be confirmed and finalized before telling you. But, uh, yeah, I've been working for a few weeks now and, um, yeah, seems okay. I I I think I got the job for sure now. So, I can tell you guys now. So, due to privacy concerns, I'm I'm not going to share which company it is. Um maybe once I quit, I can share which company it is, but um you know, I don't plan on quitting anytime soon, but I can tell you that the company is part of Fang Gulad Fang Gulad. I'm incredibly happy that I got this job offer. Uh, I'm actually really grateful and um, yeah, like it's always kind of been my dream job back then and uh, yeah, so for full transparency sake uh, I have a total compensation of 278,000 for the first year and then in the later years it's less than that because I had a sign on bonus. So I want to tell you exactly how I transitioned from data scientist to software engineer from the day that I wanted to switch to software engineering. So I was still at Facebook when I decided to transition into software engineering. I talked to my friends uh one of them was a data engineer who switched into software engineering to get some info. I asked them about different companies, what the culture was like, um what kind of questions they asked during interviews, what was the pay, how long does it take for the recruiters to respond back, what text they use, etc., etc. So, I was just gathering information. So, I kind of already had a list of companies I wanted to apply to. During the same week, I refreshed my Python skills. I mean, I haven't coded in like forever. I think the last time I coded was during my internship at LinkedIn, which was winter 2015. I used Python 2 before, but I decided to relearn or slasharn Python 3 just because it's newer. And uh it's almost the same thing except for a few little syntax differences. So I had to relearn how Python does their list comprehensions, array, strings, lambdas, uh their syntax for dictionaries, their string stuff, and also like common libraries that we would usually use in a coding interview. So that took me about 2 days. Yeah. Then I started lead coding and I actually just focused on the easy questions. And the reason why is because I I I couldn't even do them. So I wouldn't even try to do the medium questions until I could flash the easy questions. By the way, no one uses the term flash. Uh I use the term flash because in uh bouldering when you flash a climb, it means you did it in one shot. So for interviews, I mean for interview questions, I say you flash the question. if you just run it once and you get it on your first try without looking at the answers. So, I did about 30 to 40 easy questions before I can actually flash these easy questions and that took about 2 to 3 weeks. Not bad. I did like one to two questions a day. I was slowly practicing. I mean, I still had a full-time job, so I didn't have that that much time. I was also kind of sad at that time. So I exercised a lot to try to cope with that and that also took away from my coding time. Failing these legal question really wasn't great for my self-esteem, especially at the beginning when I was failing all these questions. It it felt pretty bad. I mean like my self-esteem was pretty low. And then in addition, you have to grind these questions and every question that you miss, you just feel like uh you're a failure. Uh, so it was kind of hard in the beginning, but in the end it was worth it. After that, I started doing medium questions. Now, to this day, I don't think I can flash medium questions. I mean, they're pretty hard. Some medium questions are a lot easier than others. Uh, it really depends because it kind of depends on your strengths and your weaknesses. Some of them I could flash, but some of them I cannot. I can't even solve them. So, it's kind of hard to say, but I still did a lot of them. And then the more you do, the easier they become. In the meantime, I decided to actually start applying to jobs because I told myself that I needed to put deadlines because without deadlines, I'm just going to slack and I'm not going to practice seriously. So, I polished my resume because my resume was kind of built in a more data science PME role. So, a lot of the bullet points I had to change to make it more software related. For example, for my data science job, I would focus more on the data engineering aspect of the job. And then for my PM experience, I would talk about how I prototyped these products which requires coding so that I could present it to clients and stuff like that. Getting interviews was actually really easy for me because I've built a foundation ever since I started doing internships. So over the course of all those internships, I've built connections, friends, you know, and a whole network of recruiters/friend. So for literally any tech company, I have at least a friend who works there or a recruiter that I can contact because I've already interviewed there for internships. The reason why I can contact these recruiters is because back then when I was interviewing for internships, uh I actually got offers from them and because they remember me, they'll answer my email and they'll give me at least a phone interview. So yeah, water is the [ __ ] because you get a whole network of tech professionals. You'll get a referral for any company you want to apply for as long as you made friends back in college. And I don't want to brag, but I had a handful of friends in college. So, I wanted to study full-time and go ham on leak coding because I knew that getting the interviews was not my problem. My problem was actually passing the interview. So, I decided to quit my job and leak code full-time. But that didn't happen. I ended up doing YouTube a lot and I pretty much studied the same amount as before. Okay, maybe not the same amount but just a little bit more. So I studied about like 2 to 4 hours a day which means like 3 to five questions. I usually do about 3 to five questions per day and then maybe on the weekends slightly more maybe 5 hours. I was getting more and more familiar with the questions. I was recognizing the patterns. I was learning the tricks, right? And it's it's not even about intelligence or or being smart or anything. It's literally just practice because the questions end up looking the same. They only change the context or the wording or the story line behind it, but it's essentially the same thing. So, 4 weeks later, I had my first phone interview. And uh I passed almost all of them because it's they're not super super hard. It's only like a first smoke screen and most of the time you might get a question that you've seen already on leak code, so that makes a lot easier. It's technically kind of cheating, but whatever. After the phone interviews, I also asked to push the on-site interviews as far as possible because I just wasn't confident in myself yet. So, I wanted more time to study. So, I did like 150 to 200 questions by then. But, I didn't feel like I was getting that much better. So, I bought the book Elements of Program. Oh, yeah. I think I have it. So, I bought the book Elements of Programming Interviews in Python because I wanted to practice coding using a pen and paper unlike using a computer and a platform because that is a lot more similar to when you're asked the question using a whiteboard during interviews. I think it's similar to hard mode when you use pen and paper to write your code because you have to be a lot more thoughtful because you can't erase. Then during real interviews, I actually have a whiteboard and I could use the eraser. It's going to feel a lot easier. So 2 or 3 days before the on-site interview, I would stop doing YouTube and I would study all day for 3 days. I would order delivery so that I don't waste time. So I would study around 10 to 12 hours per day before the interview. I would do a combination of leak code and paper coding using elements of programming interview. I would also go to glass door to look at the interview question for that specific company and do them. I also ask around my friends to see what kind of questions they got during their interview. Usually the questions won't be the same, but at least you get a sense of what the companies like to ask. For example, Facebook, they don't ask dynamic programming questions, but Google, they love to ask dynamic programming questions. If I learned that the company asks system design questions, then I would go read groing the system design interview and I would just try to, you know, take everything in and hope that I remember. So, at that point, I've done around 230 questions on lead code and I don't know how many I've done on pen and paper. I actually overstudied because there were so many things that I practiced for that I didn't use. Like for example, union find for disjoint sets. I didn't use that. Sorry, I can't think of any examples. Um, I've already forgotten everything I've learned because I already got an offer. So, I don't give a So, yeah, I passed few of those interviews and I failed some of them and then using the offers, I kind of negotiated so that my TC would go up and then until no one can increase anymore, I just accepted the offer. Seeing it now, it doesn't sound like much. It's just study and that's it. But while I was studying, holy [ __ ] I felt like [ __ ] But I was lucky that I had roommates and friends to support me when I most need them, to tell me that I'm being too hard on myself, to calm me down. I kind of just wanted to say again that thank you for understanding when I was away from YouTube for so long. And thank you for everyone who sent all these positive messages to me encouraging me to find a new job in software engineering. I really really appreciate that. Thank you so much. I love you. [Music] All right. It's a new chapter in my life. I think it's a pretty good start. me. I need you more.

Get daily recaps from
Joma Tech

AI-powered summaries delivered to your inbox. Save hours every week while staying fully informed.