makandra offers an 8 month paid trainee program ๐ฉ๐ช for junior developers that are looking to start a professional career in web development.
This curriculum contains goals, resources and code exercises for our trainees. If you haven't joined us yet, it offers you a glimpse of what you will learn!
Working with a coding agent
You will use a coding agent (Claude Code) during the entire program. It helps you learn, answers questions and later writes code under your direction. It is also your first stop when something is unclear โ it can explain anything on a card, tailored to what you already know. The next card, Learning with agents, sets it up and explains the rules.
How a lesson is structured
Every card follows the same shape:
- An intro that says what the lesson is about, and a box naming the mode for your agent session (explained in the next card).
- Learning goals โ what you should be able to do and explain when you're done. They are the finish line: the questions at the end of a lesson come from them.
- Resources โ a menu of articles, videos, books and playgrounds. You are not meant to read all of them: read what's new to you, skim what's familiar, skip what you already master. Your agent can generate more, tailored to you.
- Exercises โ one or more programming tasks, usually growing your MovieDB app. This is where most of your time goes.
Complex subjects appear twice in the curriculum: a basics card early, so you can start applying it, and an in-depth card later.
Your day to day
- Work through the cards in the listed order. The first one is Learning with agents.
- Every card names goals, resources and exercises. You work on it together with your agent:
/trainee-start-lessonopens it,/trainee-finish-lessoncloses it (the next card explains both). - When you're finished with a card you immediately progress to the next card. You never wait for a mentor.
- Once a day, post a short status update in
#trainee: what you did today, what you plan for tomorrow, and whether something is giving you a hard time. Please don't skip these updates.
Organizing your code
Push all your work to a GitLab repository, at least once per day. You can create unlimited repositories in your personal namespace, e.g. your.name/moviedb.
When an exercise asks you to do multiple versions, these should be reviewable as separate commits or branches. After the review with your mentor you can keep the best version and delete the others.
Getting help
We never want you to be stuck. There are no bonus points for solving everything yourself.
- Ask your agent first. It can explain a concept from a different angle, walk you through an error message, or generate a small tutorial for exactly your gap.
-
Ask people. You're working in a team of experts in the stack you're learning. Reach your mentor and fellow trainees in
#trainee, and developer colleagues in#dev-fragen. Every kind of question is welcome: technical, process, organisation. Also read: Hilfe, ich hรคnge beim Programmieren fest! - If you can't find someone to help you with a problem, send a direct message to a mentor.
Reviews and check-ins
Once a week you meet your mentor for a review of all the cards you completed since the last one. You look at your code and your agent conversations together, helped by the handoff summaries your agent wrote. The mentor may ask you to read additional resources, redo an exercise, or do an extra exercise for more practice โ these are reviewed at the next meeting.
Besides the review there is one short check-in per week: a chance to ask questions and get early feedback on work in progress. Check-ins are informal and don't affect your progress tracking.
When you're stuck between meetings, don't wait โ get help as described above.
Time and effort
The curriculum contains the amount of content that an average trainee can digest for the duration of the program (considering vacation time, holidays and sick days).
In the first weeks, trainees are often unsure how much time to invest into a particular card. For this the card titles contain a time estimate. For instance, Ruby basics [2d] means that most trainees were able to complete this lesson within two days.
You are never going to hit the estimate exactly. You're going to complete some lessons faster, but take more time for others. When you feel that you covered a topic sufficiently, move on to the next card, even when there's time left.
Every few meetings, your mentor will compare the time spent with the amount of lessons that you finished. This way you get periodic updates about your progress.