The Tech Diaries

Ep 2. How To Stay Motivated As A Developer? Answering Your Questions Pt 1.

Sahil David Season 1 Episode 2

Send us a text

Is Imposter Syndrom holding your growth as Software Engineer? Are you struggling to find motivation? In this episode, the host - Sahil, answers technical questions submitted by the audience. After working in the industry for over a decade and having a deep understanding of various technical topics, Sahil shares some insightful and valuable lessons to help you start your career in programming and gain confidence in your abilities. 

In this podcast, the host answers questions from listeners on a variety of coding-related topics, including imposter syndrome, burnout, and tips for coding. The host emphasises the importance of appreciating small wins in programming life and shares his personal experience and the benefits of having a good disciplined routine to stay motivated in this ever-moving, fast-paced world.

The key points from Questions & Answers are:

  1. How to feel confident when applying for a technical job as a new programmer? The answer lies in Practice, practice, practice. “Practice brings failure, Failure builds Confidence”. Strengthen your basic fundamentals, solve as many coding problems as you can, and work on a personal project from start to finish

  2. Tips to start learning to code & develop logical thinking. a) Focus on fundamentals, b) Ask for help. c) Find a mentor. d) Put your knowledge into action. e) Learn to code by hand. f) Read as many books as you can. g) Analyse other people’s code. h) Practice.

  3. How to stay motivated as a developer and avoid burnout? a) Take real vacations, b) Disconnect from your work after working hours. c) Take real weekends. d) Take breaks during the day. e) Give yourself permission to take a mental health day. f) Journal your day. g) Have a good daily routine. Listen to podcasts, Read books, do exercises, do yoga, and practice meditation. h) Surround yourself with people who motivate you.

  4. Frontend Development roadmap - Learn about the Internet,  Focus on Fundamentals of HTML, CSS, and JavaScript, Learn version control, CSS & JS Frameworks and so on…

Tune in and find out more. 

The episode covers

(00:00) Introduction
(01:05) My Life Update - Work & Travels
(02:24) Your Technical Questions
(03:06) Q1. I am new to programming. When will I be ready for a technical job?
(05:29) Q2. Tips to start learning to code & develop logical thinking
(06:58) Q3. How to stay motivated as a developer and avoid burnout?
(11:00) Q4. Frontend Development roadmap
(14:58) Summary & Key Takeaways

Support the show

Connect With Sahil
Personal Website (sahildavid.dev)
Instagram (@sahildavid.dev)
LinkedIn
Linktree

If you know a developer or tech professional you would like to listen to on the show, please let me know via email sahil@sahildavid.dev

If you liked the episode please leave a review. Let Sahil know what you think about the episode.


Hello and welcome to this special episode. How are you doing today? I am very excited about today’s episode, as I will be answering your questions - the technical questions you have asked me on social media platforms. 

My name is Sahil David, and I am a Data Science Engineer based in the UK. Welcome to my podcast - The Tech Diaries where we explore stories and ideas that inspire our technical minds.

Before I dive into questions, let me take a moment to thank all of you for giving your love and support. Your feedback inspires me to create this podcast. If you like the episodes and content don’t forget to follow and please leave a review so I can improve and grow in this journey. Also, If you know a developer you would like to listen to on the show or if you want to join me in a conversation, please send me a message and I will be happy to host you.

Life Update

Quick update from my side. I have been very busy at work. I am working on many exciting projects. I have been mostly working with Azure - Microsoft’s Cloud platform. We are facing some interesting challenges at work, and I enjoy the excitement of finding the best infrastructure solution for a problem. Let me know in the comments if you have worked on  Azure. I would love to know about your adventures.

I have also been working on a full-stack application for my startup. Various Intense late-night coding sessions. It’s a full-stack application where the Backend is written in Node.js and the Frontend is written in Vue Framework. I am working with my little brother Ankush on this project and I have to say it’s an amazing experience when he finds bugs in my code. An absolute pleasure to work with him. If you are listening - Hi Puru! Keep up the good work.

Also, I travelled to Italy last month. It was a nice time off. If you are looking for holiday ideas, I recommend checking Amalfi Coast. The views are breathtaking, and if you are feeling adventurous try renting and driving the car. It is definitely a travel bucket list.

Well, that’s enough about me. Without further ado let’s dive right into your questions.

QUESTIONS

So,  I received a lot of questions ranging over different areas. Thank you for sending your questions and helping me make a better podcast. I have compiled all the questions according to a common theme, so we can provide maximum value to our listeners. I have 8 final questions to answer. I have so much to say on the topics so I will have to divide the episode in two parts. If I haven’t included any of your personal questions, I will reply to you on social media. Also, I am not saying that the answers are the perfect responses, but these are my experiences and what has worked for me in my journey so far. Hope it helps you too.

So our first question is from a friend of mine who is learning to code. She asked,

Q1: I recently finished a programming course, but I am not confident about my technical skills. I feel I know nothing to apply for a technical job. When will I be ready?

First of all, I want to say, well done on finishing the programming course. That’s already a big win. We need to appreciate small wins in life. So well done. Coming back to your question about not feeling confident in your development skills. Every programmer junior or senior experiences this which some might call imposter syndrome. We feel we are not good enough as a developer. We often compare ourselves with other developers. So you are not alone. In order to build a good career, you need a strong foundation. Work on strengthening your programming foundations, don’t take anything for granted. If you need help, ask for help. Reach out to other developers. But the secret lies in practice. I read this amazing quote once - “Practice brings failure, Failure builds Confidence”. The key to clarity and confidence is practice. I often say learn by doing. Once you have the basic foundation of your programming language. Start a project. Think of any idea and start coding. It will be hard in the beginning, you might get stuck at various points but you will figure out a way for sure and that’s when your journey as a programmer will start. I also believe there are no great programmers, but there are programmers with great habits. They have gathered experiences over years failing multiple times in the process. So to summarise, strengthen your basic fundamentals, solve as many coding problems as you can, and work on a personal project from start to finish and you will have the confidence to apply for a technical job. Sometimes taking the first step is a lot simpler than you think, and as I often say “Start before you’re ready”. Every successful person has. Good luck and if you need to discuss any coding problems, reach out to me.

Q2. I am new to programming. Can you give me some tips to start with coding and develop logical thinking?

So many of you have asked this question and I can sense that many of the listeners are starting their journey as a developer. If you are starting to learn to code my advice to you would be to first make a detailed plan. One day just spend some time with yourself and make a plan. A good planning session will save you a lot of time and bring clarity. Keep things simple. Regarding some tips I would say a) Focus on fundamentals, b) Ask for help. c) Find a mentor. Having a mentor who understands you can really help you. d) Put your knowledge into action, and work on a project. e) Learn to code by hand. Try solving coding problems using pen and paper. It will really help f) Read as many books as you can. Learn about clean code and design patterns. g) Analyse other people’s code. But again the only way to develop your logical thinking is by “practice, practice and practice”. Write code to learn code.

Q3. I have been working as a developer for a few years. I feel stuck in my daily routine. How can I maintain balance in life and avoid constant burnout? How do you stay motivated?

Wow, what a lovely question. This is my favourite topic. I think sometimes we get comfortable in our lives and we get stuck into a daily routine and time just flies. Life will roll away. Days will become months, months will become years. And the worst part is no one is coming to change that for you. You have to take charge of your actions and days. Our lives have become so busy these days. Constantly working in front of screens, and constant meetings are tiring. Also, programming can be very exhausting as a job. We take countless tiny decisions that use up our personal energy. How do we stay motivated and optimistic? I found the answer to this question in a book called “Software Engineering at Google, Lessons Learned over Time”. If you haven’t read the book, I highly recommend - such a nice read. There is a section called “Protecting your energy”.  It talks about five points which are:

First point: Take real vacations. The weekend is not a vacation, and I agree. Personally, I always find time to travel. My mind doesn’t shut 100% but it charges me to keep working and growing. I think that’s my secret to keep working crazy hours.

Second point: Disconnect from your work after working hours. These days everything is cloud-based and we have work apps such as Microsoft Teams, Outlook, and Google Apps on our mobile phones. We are always bombarded with notifications outside our working hours. Make a conscious effort to disconnect. As I say, you have to disconnect to reconnect.

Third point: Take real weekends. Spend the weekend doing things you love. Spend time with your family and friends. I recently started a routine that really helps me. On weekends talk to your parents for at least an hour if not more, especially if you are living away from them. Don’t get so busy in life. 

Fourth point: Take breaks during the day. Your brain operates in natural 90-minute cycles. Drink water at regular intervals. Regular 5-minute walks will make a tremendous difference in your stress levels and productivity.

Last point: Give yourself permission to take a mental health day. Take care of yourself. If you are happy and joyful, everything works for you. 

One more thing that helps me is journaling. Write down your daily encounters, learnings and thoughts. As developers, we should be comfortable with writing documentation.

Also, it’s very important to have a good daily routine. Listen to podcasts, Read books, do exercises, do yoga, and practice meditation. If you are religious pray before you start your day whatever works for you. Good self-discipline is the key to staying motivated and managing time for the things you love, and it will also reflect in your code. This might sound strange but it works, try it out.

Another important point to say is, you might have heard that the 5 people we interact with on daily basis, 5 individuals we surround ourselves with all the time, reflects in our growth, mindset and work. I am very privileged to have amazing friends around me, who understand my work and support me in my ideas. Surround yourself with people who motivate you.

Q4. I am learning Front-end development. Can you provide a roadmap to becoming a front-end developer?

What an interesting question. First, we need to understand what front-end development is. Simply put, Frontend Development or sometimes called Client Side Development is a type of Software engineering which focuses on developing User Interfaces for websites or web applications. What do we use to browse websites - a web browser? Therefore, the job of a front-end developer is to make sure that the website loads correctly on all browsers, on all operating systems, and on all the different devices such as mobiles, tablets and computer screens. It can get quite challenging. There are so many tools and technologies to learn in Frontend Development, and for a beginner developer, it can be quite overwhelming. I wish I could explain the roadmap by showing you the diagram. I will post a detailed Frontend Development roadmap on my Instagram, so keep checking that out. But for this podcast let me try to explain as best as I can.

The first step would be to learn about the internet. It’s good to know basic concepts such as How does the internet work. What is HTTP? Learn about browsers. Then I would say focus on Fundamentals, which includes learning HTML, CSS & JavaScript. For those of you who don’t know. These are the 3 skills Frontend Developers use to develop websites. HTML stand for HyperText Markup Language. It is used to form a skeleton or the base of the website. CSS Stands for Cascading style sheet which is used to add styles such as colours, fonts and layout to the webpage. Lastly, JavaScript is a programming language which is used to add actions to our websites. It is used for dynamic interaction. For example, opening a popup on a page. Once you have learned the fundamentals of HTML, CSS & JavaScript next step would be to learn Version Control Systems such as Git for managing large applications. At this point, it’s also good to have some Web Security Knowledge.

The next step would be to learn about Package managers such as npm or yarn. CSS Preprocessors for writing efficient CSS. This is also a good time to learn about Build tools such as Linters, Formatters & Module Bundlers.

Once you are comfortable with writing & packing basic HTML, CSS & JavaScript, you can move into advanced topics such as frameworks. Learn CSS Frameworks and JS Frameworks. I would advise you to pick one and master it. I personally use Vue.js and Svelte as JS Frameworks. This will naturally transition into Testing your Apps. Learn about Unit, Integration and Functional Testing. 

The next step would be to learn TypeScript, Web Components, Progressive Web Apps and Static Site Generators. Once you reach this point you won’t need a roadmap anymore you will find your path. Further options would be to learn Mobile Applications Development, Desktop Application Development and Node.js for Backend. 

Wow, that was a lot to cover. Hope it all makes sense, but if you need to know more and discuss a plan that works for you. Contact me and I will be happy to jump on a call with you. 

Conclusion

I hope these questions and their answers are providing you with the value that you can implement in your coding journey. There are 4 more questions to answer but I think it’s best to cover them in the next episode. Once again thank you for participating and asking the questions. If you didn’t get the opportunity to submit your question, feel free to contact me. Keep Learning, Keep Growing take care of yourself. Keep things simple and enjoy the process of writing code. 

Thank you so much for listening. If you loved the episode and feel like it brought you value don’t forget to rate the show and leave a review, it really inspires me and helps the show grow, so I can keep bringing technical content for you. If you want to follow me behind the scenes, you can find me on Instagram @sahildavid.dev. Don’t forget to hit subscribe so you don’t miss an update. I drop new episode on 15th of every month. Come join me every month where we explore the exciting world of software engineering.

This is me - Sahil David signing off. Lots of love and light to you. Stay motivated and don’t forget to celebrate the small wins in life.

People on this episode