Reality of Software Development

Sahil & Sarra · Intermediate ·📰 AI News & Updates ·3y ago

Key Takeaways

Debunking myths about the daily life of a Software Engineer

Full Transcript

Imagine that you're a web developer in the year 2005. You know your HTML, CSS, and JavaScript really well. Around 2008-2009, you start hearing a lot of buzz around this new JavaScript library called jQuery. In order to stay employable as a web developer, you learn jQuery and start feeling safe. Well, that's about to change in next 3-4 years because Google released its own front-end framework called Angular in 2013, and the employers are looking for Angular developers now. If you're thinking of switching to Angular, you might want to wait a little because Facebook will come out with its own library called React in 2 years, and it's going to become the most in-demand skill in a few years. Or maybe wait until 2017 for Vue because Vue is going to be much easier to use than React. How on earth do you keep your job for a long term in such a rapidly changing environment? Yet, new programmers get easily swayed by these day-in-the-life of a software engineer videos that seem to suggest that if you just code for a couple of hours a day, read the fridge for free snacks, and eat all the free food that you want, you can somehow get paid a ton of money for it. I hate to be the one to break it to you, but if it sounds too good to be true, it probably is. I have been in the tech industry for more than 5 years, and let me tell you, being a software engineer is not all sunshine and rainbows. There are some real challenges that you have to face as a software engineer, and it's important to have the right expectations before you dive into the tech industry. Most beginners believe that they will do a thorough research on best programming language to learn, master the language, and voila, they are set for life. What they don't understand is that one of the harsh realities of being a software engineer is that you have to start over over and over again. As a programmer, you have to make peace with the fact that technology will keep evolving over time, and you have to play catch up all the time. Surely, you'll not be starting from zero every time, but you have to be constantly learning. And this has become especially important in the world with rapidly growing AI technologies like ChatGPT. I receive so many messages about whether AI will replace software engineers. Should I learn programming now that ChatGPT is out? Well, if you're someone who gets flustered easily with the changing landscape of technology, I'm afraid software engineering might not be the right choice for you. You must have heard the stereotype that programmers have to be young. And if you're above a certain age, you are too old to become a programmer. I believe it's true, provided you know what it means to be old. In this new information age, being old is not defined by your age, but by how adaptable you are. If you resist new music, new food, new technologies, you might be too old even in your 20s. If you're open to trying a new restaurant, walking a different path home, to explore new technologies, you will be a successful programmer. Another reality that most people are not aware of is that software engineering as a skill has no moat. For those who don't know, a moat is a wide ditch filled with water that helps to defend a castle against the enemy. Now, what you need is you need a castle that has some durable competitive advantage, some castle that has a moat around it. But learning programming has no competitive advantage. Let's say that you want to become a biochemical engineer. To learn how to conduct experiments, you need to have access to fancy labs and protective lab equipment. And for that, it's important to attend a college that offers these amenities. What do you really need to become a software engineer? Well, if you're willing to put in the effort, all you need is a laptop and a good internet connection. And most 14-year-olds have that now. That's why the odds of you or that 14-year-old becoming a software engineer are not very different. I'm sure if you asked young Warren to choose software engineering as a career, he would not agree to it. Being a software engineer is like living in a beautiful castle. Naturally, people are going to want to come in and take that castle away from you. That's the reason you see an acceptance rate of 0.2% at Google and low admissions rate in computer science when compared to other majors. Every single person, no matter what educational background, wants to become a software engineer now. And with no moat around you whatsoever, it's very hard to defend yourself against the competition. That's why you have to constantly upskill yourself and keep growing. Your job in the tech industry is as secure as your ability to find the next job as a software engineer. You have to make peace with that. Talking about finding your next job, another harsh reality of being a software engineer is that the skills you need to find your next job cannot be learned on the job itself. Let me explain what I mean by this. If you're a mechanical design engineer, in your job interview, you can talk about the designs that you have made and how they help the company build new products and expand their business. But as a software engineer, past is only one of six or seven interviews that you go through. On the actual job, you'll be coding for your service, writing design docs, and doing code reviews. But when you go for job interviews, they will ask you these puzzle-like algorithmic-style interview questions that don't really have much connection to the actual job of a software engineer. And these questions can be so hard at times that it's almost impossible to solve them within the 45-minute interview time frame. That's why many people hate going through these interviews. In order to prepare for these interviews, most people have to spend hours in the evening on top of their day job. They would go to a website like HackerRank or LeetCode and solve hundreds of these interview-style problems. I myself have solved more than 500 problems on LeetCode. It takes a lot of hard work and dedication to finish your day job, take a couple of hours off, and start grinding again when all your friends are spending the same time with their loved ones, relaxing, watching Netflix. But I have to admit that it does get easier with time. When you have already solved so many questions. For example, now, I target solving 100 new problems before applying for jobs. It takes me around three to four weeks to get there, which isn't too bad. Having said that, it's still a lot of work on top of the day job, which you would not have to do if you were in any other profession. Because your actual job is not a big factor in cracking the interview. It levels the interview playing field. Every new graduate knows where to find and practice these questions. And if they're willing to spend enough time, they can get better at solving these problems than someone with years of experience. So any competitive advantage or mode that you might have built as a result of your work experience is completely gone if you go unprepared to these interviews. At the end of the day, companies will pick the candidate that performs the best in these algorithmic style interviews. That's why I believe that you should be mentally prepared for rejections when you're interviewing for programming roles. I myself got rejected more than 500 times before I got my first big break at Amazon. I hope it will work out for you as well. As we already discussed, these "Day in the Life" videos tend to suggest that software engineers work only a couple of hours a day. While that might be the case for some people, many engineers are working more than 40 hours a week and in some cases, they can easily have 50-60 hour work weeks, especially close to a product launch. Here is a survey of Amazon employees where they were asked how many hours they work in a week. If you remove the first option, which is for the people who are not Amazon employees, around 17% engineers are working more than 60 hours a week. That's basically 9:00 to 9:00, five days a week. Those are pretty long hours. Only other industries that come to mind with such long hours are consulting and finance. As a result of these brutal hours, many people in tech report burnout. Here is a survey asking tech workers if they are burnt out. More than 75% workers reported a burnout. Now, I'm not claiming that any of these surveys are scientifically accurate, but these trends are quite alarming. If you were to ask for my opinion, how many hours you work is very much dependent on your team. Different teams in the same company can have different hours. For example, average hours I worked in Amazon was around 45 per week and it has not changed much for me after joining Google. Comparing this to the answers in surveys, I have been quite lucky. On top of the long hours, there is something called on-call that many engineers have to go through. An on-call is usually a week-long assignment where you have to be available 24/7 in case something goes wrong with the service or the code your team owns. During the on-call, your phone might go off in the middle of the night, usually with a police siren sound. You're expected to get up and respond to the problem within 30 minutes. If you don't, then your manager will get the siren. And if your manager doesn't respond, her manager will get this call, and it can keep escalating. I have heard stories where the engineers had to go through the entire Friday night and Saturday trying to fix an on-call bug. Luckily for me, my on-calls have not been that bad. By the way, if you're wondering, at most companies, you don't get paid anything extra for the on-call. At Google, however, you are paid extra depending on the service you own. Despite being challenging, software engineering is a very rewarding job. If I have not scared you away and you still want to become a software engineer, here is a video where I tell you one easy, one medium, and one hard way to become a software engineer. My name is Sahil, and I'll see you in the next one.

Original Description

There are several myths around "the Day in the Life of a Software Engineer". In this video, I bust some of these myths and tell you about what Software Engineers really do. ► For more content like this, subscribe to our channel: https://www.youtube.com/PowerCouple26 ► Follow us on Linkedin: https://www.linkedin.com/in/gabag26 https://www.linkedin.com/in/sarrabounouh ► Let's be FRIENDS! https://www.instagram.com/power_couple26/ ► For business inquiries, reach us on: powercouplejourney@gmail.com #coding #programming #softwareengineer DISCLAIMER: All opinions shared on this channel are our own and don't express views or opinions of our employers. We only use our experiences and public knowledge to make our content. NO CONFIDENTIAL INFORMATION of our employers is used or shared on this channel. This is not a Professional Coaching channel, it only highlights the public resources that have worked for our careers.
Watch on YouTube ↗ (saves to browser)
Sign in to unlock AI tutor explanation · ⚡30

Playlist

Uploads from Sahil & Sarra · Sahil & Sarra · 47 of 60

1 Product Management Internship - EASIEST Path to Become a PM
Product Management Internship - EASIEST Path to Become a PM
Sahil & Sarra
2 I Quit $200,000 Software Engineer Job at Amazon
I Quit $200,000 Software Engineer Job at Amazon
Sahil & Sarra
3 What do I do as a Product Manager? - Product Manager Role
What do I do as a Product Manager? - Product Manager Role
Sahil & Sarra
4 CHEAT SHEET that I Used to Crack Product Manager Interview at MICROSOFT
CHEAT SHEET that I Used to Crack Product Manager Interview at MICROSOFT
Sahil & Sarra
5 Why Tech Workers are Getting RICH💰💰 #shorts
Why Tech Workers are Getting RICH💰💰 #shorts
Sahil & Sarra
6 Why Is Everyone Quitting Their Six Figure Tech Job?
Why Is Everyone Quitting Their Six Figure Tech Job?
Sahil & Sarra
7 5 Years of Coding - Everything I've Learned
5 Years of Coding - Everything I've Learned
Sahil & Sarra
8 5 Highest Paying Tech Companies 💸💸 #shorts
5 Highest Paying Tech Companies 💸💸 #shorts
Sahil & Sarra
9 How I TRIPLED My Salary by Joining TECH
How I TRIPLED My Salary by Joining TECH
Sahil & Sarra
10 How I Became a Software Engineer Without a Computer Science Degree
How I Became a Software Engineer Without a Computer Science Degree
Sahil & Sarra
11 Top 5 non-CODING Tech Jobs that Pay $100,000+
Top 5 non-CODING Tech Jobs that Pay $100,000+
Sahil & Sarra
12 Top 5 Tech Jobs That Pay $100,000+ Without Coding
Top 5 Tech Jobs That Pay $100,000+ Without Coding
Sahil & Sarra
13 FASTEST Way to Learn Coding and ACTUALLY Get a Job
FASTEST Way to Learn Coding and ACTUALLY Get a Job
Sahil & Sarra
14 Coding Interviews Are Easier Than You Think
Coding Interviews Are Easier Than You Think
Sahil & Sarra
15 THIS is Why Software Engineers Make So Much Money
THIS is Why Software Engineers Make So Much Money
Sahil & Sarra
16 System Design Interviews are a SCAM
System Design Interviews are a SCAM
Sahil & Sarra
17 I got $50,000 more when I negotiated my tech salary
I got $50,000 more when I negotiated my tech salary
Sahil & Sarra
18 How I would learn to code in (If I could start over)
How I would learn to code in (If I could start over)
Sahil & Sarra
19 Google is not the best tech company
Google is not the best tech company
Sahil & Sarra
20 How YouTube is killing your programming career
How YouTube is killing your programming career
Sahil & Sarra
21 This is Why Your Resume Gets Rejected
This is Why Your Resume Gets Rejected
Sahil & Sarra
22 How I Hacked My Mind To Learn Coding
How I Hacked My Mind To Learn Coding
Sahil & Sarra
23 FASTEST Way to Learn Data Science and ACTUALLY Get a Job
FASTEST Way to Learn Data Science and ACTUALLY Get a Job
Sahil & Sarra
24 FASTEST Way to Learn Web Development and ACTUALLY Get a Job
FASTEST Way to Learn Web Development and ACTUALLY Get a Job
Sahil & Sarra
25 Why Most People FAIL to Learn Coding
Why Most People FAIL to Learn Coding
Sahil & Sarra
26 Google Engineer reveals his darkest secrets
Google Engineer reveals his darkest secrets
Sahil & Sarra
27 Become a better Programmer in 8 minutes
Become a better Programmer in 8 minutes
Sahil & Sarra
28 Start Behaving Like a Programmer
Start Behaving Like a Programmer
Sahil & Sarra
29 The Resume That Got Me Into Google
The Resume That Got Me Into Google
Sahil & Sarra
30 I solved 541 Leetcode problems. But you need only 150.
I solved 541 Leetcode problems. But you need only 150.
Sahil & Sarra
31 Why Good Programmers FAIL Coding Interviews
Why Good Programmers FAIL Coding Interviews
Sahil & Sarra
32 Can you solve this problem in one line?
Can you solve this problem in one line?
Sahil & Sarra
33 Puzzles for Software Engineers - Microsoft #1
Puzzles for Software Engineers - Microsoft #1
Sahil & Sarra
34 Puzzles for Software Engineers - Amazon #1
Puzzles for Software Engineers - Amazon #1
Sahil & Sarra
35 Layoffs = The END of Software Engineering?
Layoffs = The END of Software Engineering?
Sahil & Sarra
36 Puzzles for Software Engineers - Apple #1
Puzzles for Software Engineers - Apple #1
Sahil & Sarra
37 Puzzles for Software Engineers - Amazon #2
Puzzles for Software Engineers - Amazon #2
Sahil & Sarra
38 Puzzles for Software Engineers - Microsoft #2
Puzzles for Software Engineers - Microsoft #2
Sahil & Sarra
39 Puzzles for Software Engineers - Apple #2
Puzzles for Software Engineers - Apple #2
Sahil & Sarra
40 2-Minute Rule to Learn Coding - Atomic Habits
2-Minute Rule to Learn Coding - Atomic Habits
Sahil & Sarra
41 2 Minute Rule for Coding
2 Minute Rule for Coding
Sahil & Sarra
42 5 Math Skills Every Programmer Needs
5 Math Skills Every Programmer Needs
Sahil & Sarra
43 3 Developer Roadmaps That Actually Work
3 Developer Roadmaps That Actually Work
Sahil & Sarra
44 Cracked Google without a CS degree
Cracked Google without a CS degree
Sahil & Sarra
45 Top 5 Coding Languages To Get a Job
Top 5 Coding Languages To Get a Job
Sahil & Sarra
46 4 Reasons Good Programmers FAIL Coding Interviews
4 Reasons Good Programmers FAIL Coding Interviews
Sahil & Sarra
Reality of Software Development
Reality of Software Development
Sahil & Sarra
48 C is the grandmother of JavaScript
C is the grandmother of JavaScript
Sahil & Sarra
49 How to Hack Passwords
How to Hack Passwords
Sahil & Sarra
50 Learn Python with ChatGPT
Learn Python with ChatGPT
Sahil & Sarra
51 Learn Web Development with ChatGPT
Learn Web Development with ChatGPT
Sahil & Sarra
52 ChatGPT 2.0 aka GPT-4 is here!
ChatGPT 2.0 aka GPT-4 is here!
Sahil & Sarra
53 7 things I wish I knew in my 20s
7 things I wish I knew in my 20s
Sahil & Sarra
54 💸💸 $177,000,000 Coding Error
💸💸 $177,000,000 Coding Error
Sahil & Sarra
55 5 Google Search Secrets
5 Google Search Secrets
Sahil & Sarra
56 QWERTY Keyboard Slows Your Typing 🤔
QWERTY Keyboard Slows Your Typing 🤔
Sahil & Sarra
57 💰💰 Top 5 Highest Paying Jobs For Programmers
💰💰 Top 5 Highest Paying Jobs For Programmers
Sahil & Sarra
58 👩🏻‍💻 Top 5 Programming Languages
👩🏻‍💻 Top 5 Programming Languages
Sahil & Sarra
59 5 Steps to become a Full-Time Developer
5 Steps to become a Full-Time Developer
Sahil & Sarra
60 Coding is NOT enough
Coding is NOT enough
Sahil & Sarra

Related Reads

📰
IMF says Africa has to keep lights on before it can bet on AI
Africa's AI ambitions are hindered by unreliable electricity, highlighting the need for basic infrastructure before investing in AI
TechCabal
📰
What Does Job Security Even Look Like In 2026? It Starts With Skills
Job security in 2026 requires adapting to AI and economic uncertainty by acquiring in-demand skills
Forbes Innovation
📰
Artificial Intelligence Isn’t Replacing Humans — It’s Changing the Way We Think and Work
Discover how AI is transforming the way we think and work, and why it's not replacing humans, but rather augmenting our capabilities
Medium · Machine Learning
📰
Artificial Intelligence Isn’t Replacing Humans — It’s Changing the Way We Think and Work
Discover how AI is transforming the way we think and work, and why it's not replacing humans, but rather augmenting our capabilities
Medium · Programming
Up next
Catch Me Live on Earn Your Leisure Talking AI
Alicia Lyttle
Watch →