The shock nobody warns you about
Every project you built before this job, you built from scratch - you knew every file because you created every file. Day one of employment inverts that completely: you are dropped into hundreds of thousands of lines you did not write, wired together by decisions made years ago for reasons nobody fully remembers, running on internal tooling with no tutorial. The skill this demands - navigating and modifying other people’s systems - is the single largest gap between learning and employment, and almost no one trains it deliberately. So the first fog is not evidence you learned the wrong things; it is the standard entry experience, reported by essentially every developer alive, seniors on job-change included. What varies is how people interpret it: as a verdict (“I’m not ready”) or as terrain (“this is what week two of any codebase feels like”). The second interpretation is both more accurate and more useful - and teams quietly watch for it, because calm-in-fog is the first professional signal a junior sends.
The practical countermeasure is a personal system, started day one: a running log of every confusing thing and what it turned out to be- the acronyms, the deploy steps, the who-owns-what. It converts fog into a burn-down chart (the repeat rate collapses visibly within weeks, which is the antidote to feeling stuck), it stops you re-asking answered questions, and - a pattern we see with our own graduates - the junior’s private notes have a way of becoming the team’s official onboarding doc, which is a remarkable first-quarter contribution from the newest person in the room.
What your team is actually grading
Juniors assume they are being graded on code quality and speed. Managers, asked directly, grade three different things. Learning velocity: is week six visibly better than week two - smaller review comments, bigger tickets, fewer repeated mistakes? This is the core metric, and it is fully in your control. Communication under uncertainty:when stuck, do you vanish for two silent days (the classic junior failure - the silence is always read as worse than the stuckness), or do you surface it early with evidence of effort attached? The formula that works everywhere: timebox the struggle - thirty to sixty minutes of genuine attempts - then ask with your attempts shown: “I tried X and Y, saw Z, what am I missing?” That question builds your reputation; silence spends it. And trustworthiness at current size: can the ticket you are given be considered handled - tested, honestly described in the pull request, loops closed? Trust at small size is what buys bigger sizes; that ratchet is the entire junior-to-mid trajectory.
AI tools on the job: the junior’s edition
You arrive AI-fluent - it is likely part of why you were hired, and the premium band you were hired into (RM 6,000–9,000/month for AI-capable juniors) prices exactly that fluency. The workplace adds two rules the classroom didn’t. Rule one: the team’s norms outrank your habits - which tools are licensed, what code may be pasted where, which zones are AI-restricted; learn them in week one, because a compliance mistake with company code is a genuinely bad early story. Rule two: your name is on the pull request, not the model’s.AI will happily produce code above your understanding level, and submitting it creates review conversations you cannot survive - the workplace version of the vibe-coding trap we’ve written about since before you were hired. The never-submit-what-you-can’t-explain discipline is not just safety - done consistently, it becomes your reputation. Meanwhile the best junior-specific AI use case is the one nobody markets: comprehension- pasting the confusing legacy function and asking for a plain-English explanation, using the model as a tireless codebase tour guide. It compresses exactly the navigating-other-people’s-code gap that makes the first months hard.
The 90-day arc, month by month
Month one - absorb: environment running, first small tickets shipped under heavy review, question log growing, names and systems mapped. A fine month one looks unimpressive from outside; it is measured in fog cleared, not features shipped. Month two - contribute: medium tickets with less hand-holding, review comments shrinking from structural to stylistic, the first moment you answer someone else’s question. This is also when imposter feelings peak - competence is rising faster than confidence, a documented lag rather than a warning sign. Month three - own:a small feature end to end: clarifying the requirement, building, testing, shipping, and handling the bug report that follows. Somewhere in this month the codebase flips from hostile territory to workplace, and the habits above - evidence-based questions, visible progress, closed loops, the done-log - decide whether your trajectory reads as “steady” or “fast”. Fast-trajectory juniors reach mid-level bands (RM 7,000–13,000 in Malaysia) in two to three years; the ratchet starts in these 90 days.
And if you are reading this a stage early - offer not yet in hand - notice how much of the survival guide is trainable in advance: working in unfamiliar code, explaining your decisions under review, collaborating through pull requests and standups, AI-assisted building with explain-everything discipline. That is not accidental; it is the shape of any training worth paying for, and it is deliberately the shape of ours - mentor review, defence interviews, live-remote team rhythm from week one. The zero-cost preview is the free trial, and the getting-hired half of the journey is mapped in the no-experience playbook.
