Developer career growth

Build your technical skills, demonstrate your impact, and prepare for broader responsibility. These practices come from my career experience; use them as a starting point, not a complete formula for advancement.

Start with a 20-minute career review this week.

Career foundations

Choose a foundation to explore. Expand it for practical guidance.

Seek useful feedbackChoose one improvement to practise.

Ask for feedback regularly. Constructive criticism helps you understand your strengths and areas for improvement.

Ask about a specific decision, deliverable, or collaboration, then choose one improvement to practise.

Keep LinkedIn and your resume currentMake relevant skills and outcomes easy to find.

Showcase relevant skills and experience on LinkedIn, using accurate keywords that help employers find your profile.

Tailor your resume to each role and highlight relevant outcomes. I keep mine as HTML in a Git repository so I can update it, host it on GitHub Pages, and generate a PDF to share.

Build transferable competenciesGrow the skills that help a team succeed.

Technical proficiency matters alongside the skills that help a team succeed:

  • Problem-solving abilities
  • Teamwork and communication
  • Leadership and customer focus
  • Growth mindset and continuous learning

Keep updating your knowledge and evaluating industry trends against the needs of your work.

Seven practices for intentional career growth

Strong delivery matters, but repeating familiar tasks alone may not prepare you for broader responsibility. Pair dependable work with visible outcomes, sound decisions, and deliberate learning.

Pick one practice for this week. Each summary names an action and its outcome; expand it for the full guidance.

1. Keep evidence of your impactRecord a weekly contribution and its result.

Once a week, write down one example of:

  • A problem you solved or a decision you helped make.
  • A risk you reduced, delay you avoided, or process you improved.
  • The result for your team, users, or service.

Use these notes in check-ins, performance conversations, and updates to your resume or profile.

2. Look for decisions, not just more tasksOwn a recommendation, not only its execution.

Some assignments are mainly about carrying out an agreed plan; others require deciding which plan makes sense.

  • Execution-focused: implement a design the team has already chosen or produce a report with agreed requirements.
  • Decision-focused: compare design options, identify the right measure of success, or recommend which user problem to tackle first.

Both kinds of work matter. To broaden your experience, volunteer for a piece that includes framing the problem, explaining trade-offs, or making a recommendation—not only completing the agreed steps.

3. Choose a stretch you can startAgree on a first deliverable, support, and a checkpoint.

Choose work that matters, teaches you something new, and has enough structure to begin responsibly.

  • Do: agree on a useful outcome, a first task, available support, and a checkpoint.
  • Do: leave room to learn and revise your approach as new information appears.
  • Don't: choose work that repeats skills you already use every day if your goal is to grow.
  • Don't: take on a vague, oversized assignment without first clarifying its scope, authority, or help available.

If you are unsure how to begin, ask someone to help define a smaller first deliverable before you commit.

4. Make space through knowledge sharingPrepare safe coverage for a recurring responsibility.

If one recurring responsibility depends on you alone, make it easier for the team to cover.

  1. Write down the steps, context, and common pitfalls.
  2. Pair with a teammate as they take on the task.
  3. Agree how to handle questions and hand over ownership safely.

Good coverage supports your teammates and makes it easier to take on different work.

5. Make a specific requestBring a proposal covering benefit, transition, and learning.

Bring your manager a proposal that covers four points:

  • The work: the project or bounded piece you want to own.
  • The benefit: how it helps the team or its users.
  • The transition: how your current responsibilities will stay covered.
  • The learning: the capability you expect to build.

If the timing is not right, ask what smaller contribution could be useful and when to revisit the conversation.

6. Learn against a real deliverableClose the knowledge gaps blocking your next useful output.

Try not to make finishing a broad course the prerequisite for starting useful work; you may spend time on material you do not need yet.

Instead, name the next deliverable and list two or three knowledge gaps that could block it. Find a focused answer in documentation, a short lesson, or a conversation with a teammate, then use it in the deliverable.

Review the result, note what remains unclear, and choose the next small learning step. For example, before proposing a service redesign, learn just enough about the current system and its constraints to compare a couple of options.

7. Make progress and obstacles visibleShare progress early and ask for the help you need.

New work can take longer while you build context. Set expectations early, share progress in small increments, and ask for feedback before the final delivery.

When you get stuck, describe what you tried and what decision or help you need. Avoid hiding delays or trying to compensate by working in isolation; surface risks early so the team can help adjust the plan. If the work is not meeting expectations, discuss the gap and agree on a recovery step.