I'm 20 and will soon move from my home country to another European country because of circumstances outside my control. I'll probably need to work an 8–10-hour physically demanding or entry-level job to cover rent, food, and other essentials.
Before learning about the move, I planned to keep improving my programming and English so I could eventually apply for developer jobs and handle interviews with more confidence. I'm not starting from zero: I've used Python, Django, Flask, REST APIs, SQL, Git, and basic Docker, and I've built projects such as an online store and a job board. However, interview practice exposed gaps in my fundamentals, especially Python, databases, Django, testing, and backend concepts.
My conversational English is around A2, while my grammar and comprehension are closer to B1. I also want to improve my speaking for future international job applications.
My main concern is energy. Physical work has left me exhausted in the past, with little motivation to study afterward. I'm worried I'll forget what I know, fall behind, or never become ready for a developer role.
For people who have learned programming or a foreign language while working a tiring full-time job: how much did you realistically study on workdays? Did 30–40 minutes make meaningful progress? What did you do when exhausted, and did you focus on theory, exercises, or one larger project? How did you review older material, when did you start applying for jobs, and what mistakes should I avoid? I'm looking for a sustainable routine rather than an unrealistic four-hour study plan that leads to burnout.
4 Answers
Since you already know Django, Flask, SQL, Git, and Docker, don’t restart from the beginning. Pick one serious backend project and use it to expose your weak areas. Review fundamentals as they appear, add tests, improve the database design, document the project, and practice explaining your decisions aloud. For English, listen to material during commuting or chores and spend a few minutes speaking or describing your code each day.
You don’t need to master everything before applying. Once you have a couple of solid projects, reasonable fundamentals, and some interview practice, start applying and let real interviews show you what to improve. Avoid tutorial-hopping, waiting for perfect confidence, and comparing your progress with people who have all day to study. Sustainable progress may take a year or longer, but it still counts.
I studied during a demanding period by using small pockets of time instead of relying only on evenings. Short sessions during breaks, reading for 15 minutes, coding exercises on a phone, and longer weekend sessions all added up. On especially exhausting days, reviewing notes or watching an explanation was enough. You’ll forget syntax and framework details, but that’s normal; understanding the concepts and knowing how to look things up matters more.
A fixed routine isn’t always realistic when shifts change. It helps to have a minimum target, such as one focused 25-minute block, and treat anything beyond that as a bonus.
It’s definitely possible, but consistency matters more than huge study sessions. I worked in construction as an electrician and studied roughly one to three hours a day for about a year before applying. You’ll probably never feel completely ready, so build things, apply, and keep learning from the gaps you discover. Even imperfect projects are better than waiting for perfect knowledge.
That’s encouraging. I’m trying to stop treating “ready” as a finish line and focus on making steady progress.
Use your best mental hours for programming if possible. For many people that means studying before work rather than trying to force several hours after a physical shift. On workdays, choose one small, finishable task: review a concept, solve two exercises, or fix one part of your project. Use days off for deeper work. Thirty focused minutes can be valuable when it is targeted and consistent, while an ambitious plan you cannot maintain will lead to burnout.
I’ll experiment with studying before work, although I may need to begin with a very small session while I adjust to the new schedule.

A single project sounds more useful than constantly starting new tutorials. It would also give me something concrete to discuss in interviews while I work on the theory.