Developer Education Challenges

Developer Education Challenges

On this page

Developer Education (DevEd) encounters numerous challenges to ensure effective engineer onboarding and continuous learning. These issues are complex and ubiquitous across most DevEd teams. The following list is a work in progress, and I will continue to expand it as I gather more insights.

Blocker Reduction

Engineering productivity naturally increases when blockers hindering engineering teams are removed. Instead of approximating engineering output, learning teams should measure actual, observable metrics that directly correlate with effectiveness. One method involves identifying engineering blockers and measuring their reduction, as even minor obstacles can accumulate into significant productivity drains over time.

Considerations

  • Proactive Learning Solutions to Prevent Engineering Blockers
  • Incorporate Learning into the SDLC
  • Ensure Quick Discovery of Solutions and Context Sharing
  • Automate the Identification of Gaps in Documentation
  • Compile Support Requests into Searchable FAQs for Self-Service Support
  • Personalize Learning to User & Reduce Noise
  • Create Learning Templates for Common Activities
  • Allow Feedback Loops to Improve Engineer Experience

Building a Culture of Learning

Building and nurturing a culture of learning within an organization is crucial. It is essential to recognize that learning occurs continuously and is not limited to formal training sessions. Informal learning, defined as the unofficial, unscheduled, impromptu way people learn to do their jobs, tends to disseminate most fast-changing knowledge due to the lengthy planning required for formal training. We need to seamlessly capture ongoing learning, facilitate effortless content creation for new knowledge, and ensure easy discovery.

Considerations

  • Discoverability of Knowledge
  • Encouraging Growth Mindsets
  • Identifying Learning Leverage Points within the Engineering Culture
  • Informal Learning Examples: Institutional Knowledge, documentation, paired programming, incident reports, debugging chats, ticket systems & Jira solutions, questions answered during meetings
  • Incentivizing Learning & Facilitation
  • Just-in-Time/Integrated Learning
  • Reducing Knowledge Debt
  • Social Learning

Centralized or Embedded

A common challenge is determining whether the Developer Education team should be centralized within engineering or embedded into individual engineering teams to provide more focused support. An alternative approach involves rotating the Developer Education team between engineering teams based on immediate needs as priorities shift.

Considerations

  • Defining a Reasonable List of DevEd Services
  • Applying First Principle Thinking to identify what is in the best interest of the company
  • Identifying Learning Value Streams

Content Creation

Developer Education typically follows two methods for content creation:

  1. The Developer Education Team includes instructional designers, content builders, and technical writers to generate learning materials.
  2. The Developer Education Team provides guidance, conducts train-the-trainer sessions, and documents best practices for generating learning materials.

Considerations

  • Engineer Bandwidth
  • Outsourcing
  • Resource Allocation and Scaling to Meet Engineer Learning Demands

Cross-Functional Relationships

DevEd teams often have a holistic view of the engineering organization and possess documentation for solutions spanning multiple engineering teams. This is why many Developer Education Teams include Technical Program Managers, as collaboration and coordination across organizations to create learning solutions require program/product/project management expertise.

Considerations

  • Collaboration with company learning teams to centralize the toolset
  • Working with L&D or Human Resources on soft skill training targeted at engineers, such as IC Growth or Engineering Leadership Training
  • Creating training that spans multiple teams, such as migrations or building full-stack applications

Engineering Culture Models

Every company has a unique “engineering culture,” which is a subset of the company culture with its own distinct characteristics. Understanding these different methods for engineering success is crucial for a Developer Education team.

Engineering Happiness & Retention

Understanding why engineers leave and how the Developer Education team can enhance the quality of life and longevity for engineers is essential.

Considerations

  • Feeling part of a vibrant engineering community: Engineers thrive when cross-functional teaming occurs. Hackathons are a prime example.
  • Being surrounded by talent: Engineers are happiest when they feel they are among the best in their fields and have opportunities for knowledge transfer.

Engineer Leadership Training

Onboarding new leaders and developing engineers into future leaders may be the responsibility of the Developer Education team. While leadership resources are plentiful, applying them to the unique challenges within engineering is critical.

Considerations

  • Leading Engineers
  • Hiring a Team
  • Leading a Team
  • Building Cross-Functional Partnerships
  • Leadership Forum

Engineer Learner Engagement

Engineers often lack time and need targeted learning solutions that provide immediate benefits. Learning should aim to reduce engineering blockers and increase productivity.

Considerations

  • Attention Management
  • Engineer Persona Building
  • Engineer Career Paths and Identifying Educational Gaps

Engineer Techniques

Developer education should understand standard engineering techniques and how they are applied within the company. These insights are valuable for the engineering onboarding process.

Considerations

  • A/B Testing
  • Agile
  • Chaos Engineering
  • Containers/Base Images/Immutable
  • Continuous Integration/Continuous Deployment
  • Deployment Methods
  • Developer Portal
  • Monolithic vs. Microservices
  • Paved Road
  • Resilience
  • Serverless
  • Software Development Lifecycle

Global Challenges

Global companies face various challenges, and being aware of potential issues can help proactively address them.

Considerations

  • Cultural Differences
  • Effective Asynchronous Communication
  • Language Barriers
  • Software Limitations (e.g., Google is not available in China)
  • Translation of Learning Materials
  • Travel

Hack Days (Hackathons)

Hack Days are opportunities to experiment with new ideas, engage with colleagues, and potentially create innovative products. They help foster relationships across engineering teams and can increase future productivity while being fun.

Considerations

  • Event Website
  • Hack Criteria
  • Swag
  • Event Registration
  • Event Location, Food, Photography
  • Hack Presentations
  • Hack Judging
  • Awards Ceremony

You can organize a hackathon on almost any engineering topic, such as stack-a-thons, documentation-a-thons, or bug-fix-a-thons.

Hiring

Recruiting for developer education positions can be challenging, especially if the role is new or evolving within your company. It is crucial to have a clear vision for the team to define these roles effectively. Often, we seek the rare unicorn who excels in technical, instructional, and leadership skills.

Considerations

  • Job Descriptions
  • Long-Term Hiring Strategies & Recruitment
  • Networking

Engineer Growth

Engineering growth should be a personal journey, not one that is imposed on engineers. However, it is essential to provide opportunities for those who wish to expand their horizons. Examples include a variety of training opportunities, structured mentorship programs, and team rotations to foster development, cross-training, and empathy across teams.

Considerations

  • Classes
  • Conferences
  • Mentorship
  • Embedding/Rotating Teams

Inclusion & Diversity

Diverse teams are more robust and effective at solving complex problems because they bring a variety of perspectives, approaches, and skillsets. It's vital to create an inclusive environment where diversity can flourish and apply universal design best practices so that no one is excluded from delivering value.

Considerations

  • Accessibility & Universal Design
  • Additive Hiring
  • Allyship
  • Cognitive Diversity and Collective Intelligence
  • Neurodiversity

Integrated Learning

Integrated learning can take many forms, but for engineering, it means incorporating learning opportunities into applications and proactively providing resources as engineers encounter potential blockers.

Considerations

  • Application Walk-throughs
  • Bots for Self-Service Support
  • Embed FAQs from systems like Stack Overflow into manuals, software help, and chat systems (e.g., Slack)
  • Informative error messages with built-in debugging and links to relevant documentation
  • Learning embedded in the Developer Portal

Instructional Design Methods & Pedagogy

Creating or empowering others to create training is a significant part of your role.

Considerations

  • Andragogy (adult learning)
  • Cognitive Overload – Top Engineering Training Mistake
  • Engineering Philosophies/Eponymous Laws
  • Learning Methods – ADDIE Model, Bloom’s Taxonomy, Merrill’s Principles of Instruction
  • Presentation Styles – Examples: Ignite Talks, Lightning Decision Jams
  • SODOTO (See One, Do One, Teach One)
  • Overcoming Engineering Cognitive Biases (Example: Complexity Bias)
  • Learning from Mistakes (Post-Mortems)

Internal Communication

Internal communication occurs within your team, such as newsletters, a team website, and Slack channels. You may also assist engineering teams with their communication, including slide decks, presentations, and roadshows. Whenever context is shared among engineers, it is a form of learning, and the DevEd team can provide best practices to ensure understanding and retention.

Considerations

  • Internal Team Communication (staying aligned)
  • Communication among Engineers (more technical)
  • Communication between Engineers and Customers (more user-friendly)
  • Increasing Context Flow
  • Reducing Action Without Context
  • Reducing Noise to Signal Ratio
  • Being Concise is Time Consuming
  • Cognitive Bias
  • Communication Consistency & Standards
  • Creating Feedback Loops
  • Retention of Communication
  • Engineers Need Shared Understanding of Engineering Contributions & the Business Value

Knowledge Management

Making engineering content discoverable and democratizing knowledge may fall within the DevEd scope. Solutions such as Federated Search and an Internal Documentation Front Door can facilitate knowledge management. You may also assist with documenting requirements, standards, and creating tutorials on paved path solutions that span multiple engineering teams. The Developer Education team often works closely with technical writers and may fall under the same organizational umbrella.

Considerations

  • Challenges: Accuracy, Analytics, Automated Checks, Consistent Tagging System, Discoverability, Gaps, Integrations, Quality, Ownership, Maintenance, Prioritizing, Standardization & Templates
  • Types of Documentation: Overview, Getting Started Guide, Tutorial, Cookbook, Concepts and Architecture, Reference Guide, Runbook, Contributor Guide, FAQ, Team Overview, OKRs, Roadmap, Proposal, Service Level Objectives, Technical Design Document, Technical Product Strategy Document
  • Knowledge Opportunities
  • Identity Management and Access Controls on Knowledge
  • Language and/or Writing Skills/Communication Skills to Pursue
  • Natural Language Processing & Automation
  • Portals, Unified Search, Landing Pages
  • Video Transcription & Searching

Learning Communities

Learning communities connect people, organizations, and systems eager to learn and work across boundaries in pursuit of a shared goal. They offer tremendous value within organizations and in building external networks. These communities benefit engineers who may be using non-paved road solutions because their needs are not prioritized over more adopted solutions.

Considerations

  • Building & Fostering
  • Cohorts
  • Communities of Practice
  • Guild Model
  • Learning Collective
  • Skill Exchange System
  • Squads

Learning Toolkit

The term “toolkit” describes a broad set of related activities and tools necessary to operate the Developer Education program.

Considerations

  • Collaboration Tools
  • Content Providers (LinkedIn Learning, O'Reilly, Pluralsight)
  • Event Registration Platform
  • Learning Experience Platform
  • Mentorship
  • Surveys
  • Newsletters
  • Project Management

Measuring Impact & Effectiveness

Measuring the impact of your learning initiatives within your organization can be challenging.

Considerations

  • Defining Impact & Effectiveness
  • Measuring Engineer Productivity
  • Kirkpatrick Model
  • Measurement Tools
  • Quantitative and Qualitative Analysis of Participant Feedback
  • Participation, Impact & Satisfaction
  • ROI
  • Survey Fatigue
  • Types of Measurements (Google Analytics for site visits to measure conversion, Newsletter conversion, LXP

Recommended Readings

Engineering-productivity-can-be-measured (blockers)

Mentorship & Coaching

Coaching focuses on enhancing on-the-job performance, while mentoring takes a broader, holistic approach to career development, considering the professional's current role and future aspirations. Companies often implement mentorship programs to develop engineers' skill sets, distribute institutional knowledge, and strengthen working relationships across the organization.

Considerations:

  • Engagement
  • Internal/External Mentoring
  • ROI
  • Skill Exchange
  • Tools/Tracking

Recommended Reading:

Onboarding Engineers

The aim is to equip engineers with the necessary information to deliver value swiftly. This involves introducing them to the engineering culture, systems, processes, and tools, and providing support through a buddy system. Helping new hires understand their role within the organization’s engineering ecosystem and common barriers is crucial for their success. Companies use various strategies to onboard engineers effectively.

Considerations:

  • Branding (e.g., Bootcamp, Flight School)
  • Cadence & Duration
  • CTO Welcoming New Hires
  • Ease of initiation, clear documentation, available support, and consistent communication
  • Engineering Buddies
  • Engineering Culture & Techniques
  • Keeping Content Relevant & Current
  • Systems, Processes & Workflows

Recommended Reading:

Personalization

Learning should be tailored to immediate needs, with systems smart enough to make quality recommendations, reducing the time spent searching for solutions. For example, Netflix's personalization algorithm should help users quickly find content that sparks joy without excessive scrolling.

Considerations:

  • Efficiency
  • Decision Fatigue
  • Recommendation System
  • Targeting

Recommended Reading:

Prioritizing

The developer education team must prioritize initiatives based on their impact, aligning with company strategy and goals, due to the inevitable volume of work exceeding capacity.

Considerations:

  • Aligning with Company Strategy & Goals
  • Business Value
  • Content Working Groups
  • Eisenhower Matrix
  • Gauge Interests (Painted door)
  • Metrics/ROI
  • Reciprocity
  • Team Capacity
  • Urgency

Recognition

Publicly acknowledging positive engineering behaviors fosters intrinsic rewards and increases learning engagement. Recognition can focus on the individual's achievements or the outcomes of their learning efforts.

Considerations:

  • Badging/Certificates
  • Celebrating Small Wins
  • Email to Managers
  • Newsletter Mentions
  • Performance Review Acknowledgement
  • Multiplier Parties
  • Recognition Ceremonies

Remote vs. In-Person

With the shift towards remote-friendly or remote-first opportunities, it’s essential to ensure the remote experience is equivalent to in-person. Higher education institutions have long offered online courses, providing valuable insights.

Considerations:

  • Physical Distance, Operational Distance & Affinity Distance
  • Challenges, Obstacles & Pitfalls
  • Blended Learning Experiences
  • Learning Tools (platforms and content creation tools)
  • Remote Opportunities for Casual Collisions, Spontaneous Meetings & Serendipitous Knowledge Transfer

Removing Crutches

When deciding between a workshop or a self-service module, consider if training is a solution for a poorly designed system. Aim to enhance user experience and create proper documentation rather than relying on training as a crutch.

Considerations:

  • Intuitive Design
  • Making the Implicit Explicit
  • UI/UX
  • Usability Testing

Simplicity & Automation

To reduce cognitive overload, simplify communication and learning into digestible chunks. Automate content creation and integrate learning systems to streamline processes.

Considerations:

  • APIs
  • Bots
  • Queries
  • Integrations
  • Micro-Learning
  • Notebooks
  • Widgets

Subject Matter Experts, Internal Trainers, or Outsourced

The choice of who creates and facilitates training will shape the Developer Education team’s goals and priorities.

Considerations:

  • Advantages of SMEs Facilitating Training: Product Experts, Homegrown Systems, Builds Empathy, Builds Community, Enhances Communication Skills, Increases Customer-First Mentality, Scalability
  • Disadvantages of SMEs Facilitating Training: Maximizing Engineer Time, Not Professional Trainers

Team Effectiveness

This is typically the leader’s responsibility but can be a shared team effort, focusing on various aspects to enhance team performance.

Considerations:

  • Budgeting, Resource Allocation & Hiring
  • Evangelizing Efforts and Radiating Intent
  • Forming Mission and Branding
  • Identifying Opportunities, Value Stream Mapping, Setting Priorities, and Managing Expectations based on Resources
  • Creating & Aligning Strategies, OKRs
  • Relationship Building with Stakeholders
  • Team Member Career Ladders
  • Your System is not a Sports Team
  • Team Working Agreements (TWA)

Technology Acceptance Model (TAM)

For engineers to adopt a tool or service, they need to perceive it as valuable and user-friendly. Training should clearly address these aspects.

Questions to Address:

  • Is the new tool genuinely useful?
  • If it is useful, how will the learner know that?
  • Is the tool easy to use?
  • If not, how can usability be improved?

Training Level Challenges

Engineers have varying expertise levels, necessitating a range of training from general to specific, covering areas like cloud, security, backend, frontend, and data.

Considerations:

Training for Recruitment

Developer education can include partnerships with colleges and bootcamps to increase the pool of future engineers with the necessary skills.

Considerations:

Vendor Management

Managing multiple SaaS subscriptions and service providers involves needs assessment, vendor selection, solution implementation, system administration, and ongoing vendor meetings.

Considerations:

  • Creating Internal Needs Assessment
  • Vendor Evaluation & Selection
  • Facilitating Vendor Purchase (Security and Legal Vetting)
  • Implementing Vendor Solutions
  • Single Sign-On
  • Integrations to Other Systems
  • Administering Systems (User Management)
  • Ongoing Vendor Meetings with Customer Success Teams
  • Assisting with Roadmaps
  • Paying for Professional Services
  • Marketing Solutions Internally

Subscribe to Developer Enablement newsletter and stay updated.

Don't miss anything. Get all the latest posts delivered straight to your inbox. It's free!
Great! Check your inbox and click the link to confirm your subscription.
Error! Please enter a valid email address!