Continuous Challenges
Keep team members growing by providing new challenges when comfort zones become too comfortable
Why Continuous Challenges Matter
When someone has been working on the same project for a long time and knows it inside out, they stop growing. The work becomes routine — they can do it on autopilot. While this is great for short-term productivity, it's harmful for long-term growth and engagement.
People grow when they're pushed slightly beyond their current abilities. The key is to provide a steady stream of challenges that are stretching but not overwhelming.
Project Rotation
The most direct way to challenge someone: when they've mastered their current project and are interested in something new, move them to a different project they're unfamiliar with.
How It Works
- When a team member has become very comfortable with their current project, have a conversation about what they'd like to explore next
- The member must be interested — this is not a forced reassignment. It works because they want the challenge
- Transition them to a project they're less familiar with, where they'll need to learn new domains, technologies, or problem spaces
- Ensure proper handoff of the original project — document knowledge and gradually transfer ownership
Benefits
- The member learns new skills and gains a broader understanding of the business
- The team reduces single-point-of-failure risk on any one project
- Fresh eyes on a project often bring new ideas and improvements
- Cross-project experience builds T-shaped talent
Other Methods to Provide Continuous Challenges
Stretch Assignments
- Assign tasks that are slightly above a member's current skill level
- Pair them with someone who can help if they get stuck, but let them lead
- Examples: Let a mid-level engineer lead a system design, have a frontend developer build an API, let someone who's never done it lead a sprint demo
- The goal is controlled discomfort — enough to grow, not enough to fail
Tech Lead Rotation
- Rotate the Tech Lead role across team members for different projects or sprints
- Leading a project exercises different muscles: planning, communication, decision-making, risk management
- Even for people who don't want to become managers, leading a project is a growth experience
Cross-Functional Pairing
- Pair a backend developer with a frontend developer to work on a full-stack feature
- Have an engineer shadow a product manager for a sprint to understand the product perspective
- Let a developer join an on-call rotation for a system they didn't build — they'll learn fast under real pressure
Ownership Expansion
- Gradually expand a member's scope of ownership
- Start with owning a feature → owning a module → owning a service → owning a system
- Each expansion comes with new challenges: more stakeholders, more complexity, more ambiguity
Internal Open Source
- Encourage members to contribute to other teams' codebases or shared internal tools
- Working in an unfamiliar codebase is inherently challenging and builds adaptability
- It also builds cross-team relationships and a broader understanding of the organization
Conference Talks and Blog Posts
- Encourage members to submit talks to conferences or write public blog posts
- Explaining something to an external audience is a completely different challenge than explaining it to teammates
- The preparation process forces deep understanding and clear thinking
Tips
- Always check that the person is interested before creating a challenge — forced challenges breed resentment, not growth
- Provide a safety net — challenges should stretch people, not break them. Make sure support is available
- Celebrate the learning, not just the outcome. If someone tackled a hard challenge and struggled, that's still growth
- Keep an eye on workload — challenges on top of an already heavy workload create burnout, not growth