Good Developer Relations Program Recipe !!
More and more companies are joining the Developer Program Club, What is a Developer Program ?
Basically Developer Program is all about developer offering, reaching out to developers, communicate the right way , get the feedback , improve your offering, make developers succeed. The aim of developer programs is to fulfill the organization's mission for the developers. The idea is to establish a strong and honest relationship with the developers, guide/support them in their entire journey of idea to final product and make developer’s life easy. Developer's success is your success !!
The Core - Your Developer Offering
The success of developer programs depends on many factors. Core of any developer programs would be the SDK, APIs, Documentation and Tools. Make sure you have easy to use, best in class APIs, Tools to support the development. Know your audience and create SDKs as per their need and priority. For e.g. SDKs for Web/Android/iOS SDKs as priority and think about Cross platform tools offering /windows phone / any other OS later. Also make sure that you have development platform support for Windows, Linux and OSX.
Role of Developer Advocates
Developers are very happy to listen to what other developers say So its necessary to have Developer advocates to do the evangelism activities. I would like to refer them as ‘product lover’ since they will have the love and passion towards to the developer product and they love to help other developers and make them success as well.
Developer advocates would be the internal customer for the product team who develop the developer offering. Developer advocates need to work with the product team, marketing and sales team and will have right to say whether the product is “Ready to Go to Market" by validating the APIs of the product !!
Developer advocate’s activities include but not limited to : Educate developers, Attend various events, Presentations, Public speech, Tutorials/Blog, Sample projects, Forum Support, Provide feedback to the product team, Community/Forum Handling, Social network communications, Networking, Provide technical consultancy, solve developer’s issues and more. It will be Developers, developer and developers ...!!
Reach out to Developers - Ways of reaching out
Unified and clear messaging is the key while communicating with the developers.
Breadth Evangelization Activities : Activities to reach out to the mass developers and make your developer offerings in the top of their list for all developers. Organize your own developer events (if possible) and invite developers.Breadth evangelism activities can generate business leads where event attendees would be interested in your offering or they can be your ‘sales person’ where they will promote your product with their friends/customers.
Attend third party developer events : Give an overview with a keynote to talk about organization’s views, plans and added value of your organization. Attend developer conferences and talk about your developer offering. Search for different developer conferences or events where your potential customers would be attending.
Tech Session Workshop : Invite interested developers to attend full day training/workshop for hands-on along with a training.
Webinar : Online sessions to reach out to developers who are geographically distributed.
Depth Evangelization Activities : Reach out to your existing customers, educate them about your offerings, advanced features, get their feedback and take actions.
Social Networking: Use social networking sites to spread the news : For e.g.: Release of developer offerings, Tutorial/Blog/Example projects availability, webinars, or any other events like tech talk/workshop etc. Make a community around your developer program : Invite as many developers as possible towards your developer program.
University Programs : University/Students programs would be a good option to evangelize among student developers who can make innovative products from the developer offerings. As part of their For student’s academic projects, developer accounts can be offered at discounted rate.
Share the success Stories of developers/partners : When ever possible, include partners/developers as part of the developer events to share their success story with your developer offering.
Competitions : Allow developer’s to participate in online competition to submit their innovative idea and work on the project using your developer offerings along with other SDKs in case needed.
Excellent & Organized Content creation
Online and Offline Content. Clear and well organized documentation about the offering. Overview and API references. Tutorials, Blogs, Video Tutorials & Example Projects . Create example projects with various use case targeting various domains if possible which covers every feature of your developer offerings. Create and update Github accounts with tutorials & sample projects.
Forum & Knowledge Base :
Create your own support forum where developer’s can post their queries and get response. Make sure that developers get correct answers at the right time. Encourage developers to join the forum and post their queries as well as their view and answers to other queries.
Invite the developers to be part of the forum to actively contribute in replying to the post, create tutorials, blogs etc. Developers can be incentivised to provide their support by announcing Forum Champions, developer of the month, domain expert along with prizes.
Track the forum entries regularly and create Tutorials or FAQs around the entries based on the number of views. Innovative projects & Tutorials can be created by conducting online/offline competitions.
Create and update FAQ : If a particular version of the offering is having any known issues/bugs , make sure that you list down all those and inform the developers. Otherwise, developers will waste their time by trying to fix the issues which may not happen. Also if there are alternatives/work arounds which can be followed for the existing issues before the next release, communicate the same to the developers.
Get the Feedback : This will be a repeating process. Get the feedback , improve your product and release to the developers. It would be a good idea to release the beta version to early access developers to get early feedback and work on their feedback before launching the first version out.
Identify the pain points of the developers and try to solve them through your offering. Channelize the feedback from the developers to the product team to improve the product. This could be feature requests, improvement ideas , optimization, better documentation
Measure the Success of Developer Events : Its difficult to measure various developer events. But the success/failure of the events can be tracked by various methods like number of developer accounts created, number of webinar attendees, forum entries and requests, Tutorials/Blog views, API hit etc. You can do a “Big Data Analysis” from these data.
Health of the apps : It is good idea to keep track of the apps getting created from the developer program , check their health regularly to understand the quality of the apps. Take necessary actions to improve the quality of the applications. Identify the causes for health, most of the time there would be multiple reasons behind it. Identify and create a long term plan to solve the issues.
Conclusion : Intention of Developer Program is to fulfill the mission of the organization by building and engaging strong relations with the developers. Create a world class developer offering for the developers and be with them in their entire journey of development and make them succeed.
Waiting for your comments/feedback.....
WOW Very good Article Ajith KP.
Nice Article . Some thing I also can practise :)
Nice essay, i love the 'Health of the apps' section as it is the area where developer outreach programs often fail.