This blog post is for anyone starting a new community program in the tech industry. In this article, I discuss a breakdown of a high-level, flexible community strategy designed to provide a starting point for developer community programs.
- Developer Relations:
There is no single definition that can reflect the multi-faceted nature of developer relations, and can be thought of as public relations, but specific for the tech industry. The user persona of a developer and average tech industry worker is so vastly different than the average user persona in traditional marketing, that it requires special marketing campaigns.
| Developer Truisms by The DevRel Book. |
Developer relations covers many components, such as developer education, developer marketing, developer experience, developer evangelism, developer program management, developer success, and much more. It is often at the intersection of many departments, such as community, business development, content creation, and engineering. For example, developer relations professionals may design developer retention programs, work with marketing to create technical content, and report developer feedback to engineers. The primary goals of developer relations are to engage with developers and to increase developer success throughout their journey.
- Tech Community Management:
Technical content creation is specialized social media management and knowledge base management for the tech industry. While most of us are familiar with social media management, knowledge base management is managing the content of social media. This includes technical documents, blogs, presentations, libraries, and much more.
A technical content creator may write docs and tutorials, produce technical social media content to attract developers, and use a data-driven approach to technical content creation. The overall goal of technical content creation is to use technical docs and content as a marketing tool.
Four Aspects of Technical Community Management:
The terminology used by developer relations and community management professionals is not strictly defined. While there are no manuals providing universal definitions for all commonly used words, I like to divide my technical community program management strategy among 4 main themes:
- Program Management
Managing the technical community program, usually working from the highest-level overview of the community. This looks like designing community commitment campaigns, mapping user experience, analyzing for strong & weak touchpoints, and social analytics.
Advocacy on behalf of the product and client, includes education, troubleshooting with users, onboarding, managing the knowledge bases, and more.
Representing the team to users and the users to the team (one of my favorite parts of the job.) Communications in technical community program management is all about ensuring everyone's interests are fully supported, from users to stakeholders. This includes content development (channels to market), internal & external communications, inter-departmental communications, and much more.
“I only debate my equals. All others, I teach.”
― John Henrik Clarke
Getting involved in the community itself and assessing its culture from the ground up. This observes the community from the lowest level of oversight but gains the most insight into the state of your community. In sum, I put on my beginner's mind and explore the community's culture from all its channels and all stages of the user's experience. This includes user journey mapping, moderation, representing the team, and much more.
Note that these are not 4 main duties but 4 main themes, my primary tasks always depend on the current project. All of these four pillars come together to promote sustainable community growth.
| My Locus of Tech Community Management |
Tech Community Program Management Strategies:
Note: I don't use a one-size-fits-all approach, my primary tasks and order of operations depend on the needs of each community. Here is a basic, starter guide to my technical community program management strategy.
1. Assess the Basics:
Get to know the current state of the community.
What type of technical community is this? (Some common types: developers only, developers + users, organizations, etc.)
How large is the community and what is the current commitment level distribution?
What are your first impressions of the product across all current channels to the market?
2. Determine Program Objectives:
Create clear job goals and objectives for your program. Make sure they align with your client's goals.
What do employers want & what do they want to avoid?
What value will your program bring to stakeholders & users?
Create new channels to the market to increase crowd-sourcing.
Simplify service access to increase user satisfaction.
Build the infrastructure for sustainable community growth by designing commitment campaigns.
3. Analyze User Journey Maps:
This is an explorative task for discovering the community from the ground up. You adopt a beginner's mind and go through the process as you would a community member, and assess for strengths & weaknesses, onboarding gaps, and more.
| A Developer User Journey by The DevRel Book |
Questions to consider:
Where are users coming from?
Get to know the community, and develop user personas (pictured below).
Should we scale the community horizontally or vertically next?
What are the current channels to the market?
What is the onboarding process like?
How is the product being used and providing value from the user's perspective?
Note all positive and negative experiences and feelings during this process.
| A developer Persona Canvas by The DevRel Book |
4. Develop Technical Community Commitment Campaign Program:
This is where you dive deeper into your work, dig into your developer relations arsenal, and accomplish your goals. First, you design programs to meet your client's and community's goals. This can be one program or multiple, each containing 1 or more community campaigns to meet the program's goals. My favorite starting point here is community commitment curves (pictured below) which map out the user experience across different levels of commitment and the respective tasks they're participating in.
From here, using the community commitment curve, it's time to:
determine touch points between stages and data points for measuring them.
identify the problem areas from your gap analysis and what solutions can be implemented on the community curve.
set up new touch points on the curve to provide incentives and rewards to users, in alignment with the program's goals.
Some more examples of community campaign goals:
building effective community growth through content management, social media pipelines, events, and more, to increase channels to market.
rewarding users for their commitment to membership programs.
optimize and scale educational efforts and onboarding processes to increase developer success.
monitor the community for bad actors to reduce trust & safety violations and support user happiness
If you are feeling lost in exactly what kind of campaigns will work best, I recommend using a Lean Business Model to help break down your options into deconstructed concepts for more informed value analysis.
| Lean Canvas Business Decision-Making Model Example |
| A Community Commitment Curve |
An example of a simple community commitment curve - notice the tasks per stages of commitment. By Carrie Melissa Jones
| Empathy Map |
An example of a simple empathy map, highlighting the desired emotions of target users. By Carrie Melissa Jones
5. Set Clear, SMART Goals with the Team:
After gaining a solid grasp of your community program's high-level overview, it's time to gather all the insight from the previous steps to hone in on the specifics of your community program.
Now it is time to set program metrics, timelines, and deliverables, here are some tips:
- Make sure your goals are SMART goals (Specific, Measurable, Achievable, Relevant, and Time-Bound). An example of a SMART-goal statement might look like this:
Our goal is to [quantifiable >objective] by [timeframe or deadline]. [Key players or teams] will accomplish this goal by [what >steps you’ll take to achieve the goal]. Accomplishing this goal will [result or benefit].
When the goals are clear and attainable, metrics like OKRs & KPIs are not difficult to track.
Determine milestones within your timelines where specific goals are reached.
Determine the scope of your program and the key figures responsible.
Determine reporting and plan for reviews of your program's progress.
Check out this awesome Airtable by Tessa Kriesel, Head of Developer Relations at Snapchat, for example, metrics used in developer community programs.
When joining a team as a consultant, sometimes you're hired to provide solutions to predetermined gaps in the community experience. Other times, leadership is still in an investigative phase and needs your help finding the problem. This determines your investigative depth for assessing the developer experience user map and developing personas.
For advocate programs and youth, user advocacy & education will be the primary focus! Where as large-scale inhdustry jobs focus on consistent content creation.