Lessons learned from standing up a front-end development program at IBM
3 key factors for establishing a successful grassroots education program
In 2015, we created the FED@IBM program to support front-end developers and give them the opportunity to learn new skills and teach other devs about their specific areas of expertise. While company programs often die out due to lack of funding, executive backing, interest, or leadership, our community is thriving in spite of losing the funding, executive support, and resources we had at the program’s inception.
What’s the secret behind the success of this grassroots employee support program? As I have been transitioning leadership of the FED@IBM Program and Community, I have been reflecting on our program’s success and how to define how we have been able to sustain the program. In this blog post, I share the three key factors that contribute to the ongoing success of the program:
- Identifying engaging issues and building knowledge sharing platforms
- Empowering leaders through a distributed community
- Defining the group’s role in the organization
Identify engaging issues and build knowledge sharing platforms
When the FED@IBM Program started, the program’s creator Damon Deaner’s first task was to look at the existing grass root efforts already supporting front-end developers. In 2014, front-end developers in the flagship IBM Design Studio in Austin met regularly to share what they learned at a conference, introduce tools they were using, or discuss best practices for front-end development. The developers in this informal program were looking for a sense of community and support for front-end developers who were often the “lone ranger” on a project, outnumbered by designers or misunderstood by design leads.
Because IBM has offices all over the world, scaling out this effort beyond Austin posed some challenges. We believed that the full-stack or back-end developers across IBM who worked on the UI layer of their application could benefit from the program as well. While we could identify the front-end developers who were hired for our design program, we needed a way to identify and reach out to the full-stack and back-end developers who would benefit.
The global FEDucation calls are scheduled at a regular time every other week. In Austin, we offered free lunch to entice developers and, when we moved the call earlier to accommodate our European developers, free breakfast tacos. In addition to the live broadcast, we record all calls and make them available to the community in a shared repository following each FEDucation.
Developers benefit from sharing their knowledge in FEDucation because they gain internal eminence as a subject matter expert, which is helpful for career growth. This benefit has contributed to keeping the FEDucation sessions going strong more than 4 years later. Since its launch, we’ve had more than 120 FEDucation sessions reaching more than 4,500 developers from 58 countries.
In addition to the successful FEDucation effort, the Front-end development Slack workspace plays a critical role in supporting the community. The workspace grows steadily and serves as the gathering place for developers to ask questions, get help when they are stuck, and share knowledge about their craft. Communication tools like Slack also provide a great way for program leaders to share announcements about upcoming FEDucation topics, calls for volunteers on side projects, new initiatives or program updates.
Empower leaders across a distributed community
To make the FED@IBM community sustainable, the leadership of the program has shifted from a single, Austin-based leader to a distributed and scaleable model. For our community to continue to thrive, we created a hub-and-spoke model to connect the developers located all over the world, in many different time zones and cultures.
We brought together a group of thought leaders in our program from all over the world to an in-person workshop. We used design thinking to examine our mission and adjust it for the future. We decided on the following mission statement for our program:
_FED@IBM helps IBM grow revenue by crafting industry leading user experiences grounded in a set of open practices and shared core competencies that attract, retain, and grow top talent.
At the end of the in-person workshop, we challenged these thought leaders to create local, in-person branches of the global program in their respective locations.
The first FED@IBM local branch was officially launched in February 2018 during a week-long enablement event that the local FED@IBM branch leaders in Böblingen, Germany, conducted. This Hackademy combined conference-styled talks with a hackathon. Their event was delivered using a blueprint from the same event which was prototyped by Sam Richard and Damon and delivered by a core team at 16 live events. This event was packaged up as “Hackademy In A Box” with video and written resources and instructions for any local team to conduct their own event.
The key to the success for these local groups is the connection through the hub. Early on in the program, local groups were formed after a Hackademy event took place in a location as the Hackademy team moved on to the next location. While there was great interest immediately following the hackathon event, over time, interest waned and often these local groups did not survive. When we launched the official FED@IBM local branches in early 2019, we immediately set up a shared Slack channel for the branch leaders, GitHub repositories within the FED@IBM GitHub organization, and scheduled regular branch leader calls. Maintaining this connection has been critical to allow support for branch leaders to share ideas on how to manage the local community or ideas for activities.
For example, one of the groups shared how they were struggling with attendance at their meetups and realized that members often forgot or had other meetings scheduled over it because the event wasn’t added to their calendar. Another branch leader shared how their group uses an internal event registration tool that automatically subscribes participants to the sessions and reserves time on their calendars which drastically improved attendance. Now, the rest of the groups are benefitting from this new way of managing their local meetups.
These formalized branches and chapter programs have helped us create a more sustainable community.
Developers in Böblingen, Germany gathering to learn about using IBM’s Carbon Design System at the Böblingen FED@IBM Local Branch meetup.
Define the group’s role within the organization
As a community of practice matures, it must define its role in the broader organization. To transform from a community of support and become a vehicle for transformation, the community must find a way to measure its impact and prioritize what initiatives the group will focus on.
FED@IBM’s hub of branch leaders is currently brainstorming and ideating on the following areas of impact:
- Onboarding new front-end developers. We’re looking at tools that FEDs at IBM use, what defines a FED at IBM, and best practices for front-end development. We’ve defined guidelines for job postings and guidance for teams around how to interview and hire a front-end developer.
- Building and sustaining community. Initiatives around this area include publicizing FED@IBM, rewarding participation, offering support for running branches, and rewarding presenters. Digital badges, swag, thanking the group leaders, and identifying their contributions to their managers are all potential incentives.
- Increasing internal awareness. This is, perhaps, the most critical area to get right in order to create a sustainable community. It’s critical to gain visibility and attention beyond word of mouth to continue to attract not only members whose job roles align 100% with the community but even those who spend even a small portion of their time coding the UI. Also, increasing internal awareness among engineering leadership is critical to the program’s longevity and infusion into engineering teams.
- Increasing external eminence. We want to help externalize the hard work our developers do internally around these education sessions. FED@IBM is ramping up our efforts by sharing our program externally through external speaking engagements and thought leadership. In addition, we are releasing some of our favorite FEDucation sessions on this IBM Developer platform. Enjoy!
Building a sustainable community is hard, especially in a well-established company. Our lessons have served as a pattern for other communities at IBM and I hope the key factors we outlined here are helpful for anyone interested in building a similar community.