A bit of background
Made Tech run a learning session every Friday for everyone in the company called Learn Tech. The primary purpose of Learn Tech is to empower all employees to develop their knowledge and, in turn, work towards career progression goals. This time has also been used to discuss the need for new guides, core skills, or workshops. As a new starter, I’ve found this a welcome shift from my previous experience around learning in the workplace.
In one of these sessions, a lead engineer asked: “Do we need to provide learning materials for API development?”. During this initial meeting, the attendees believed that there should be some learning materials, and this was an important subject to explore further.
The first session ended with a goal for subsequent sessions: every engineer at Made Tech should have a shared understanding of what building awesome Web APIs looks like. We had also agreed that the next meeting should seek to validate and define our approach to achieving this goal.
Validating our assumptions
When we met again, we produced a survey to ascertain the level of understanding across the business, not just within the technology team. We sought to answer the following questions:
- What exposure do people across the company have to APIs?
- Do people think that having a shared knowledge would be of benefit?
- What makes an awesome Web API?
Our survey showed that while every respondent knew what a Web API was, they did feel that they could have benefited from materials. 100% of the respondents said they knew what a Web API was, while 87.5% said that they could benefit from some introductory resources. We also found that the most common pain point when using a Web API was the lack of complete documentation.
We used the results of this survey to ascertain the need, and want, for a shared understanding across the business when it comes to Web APIs. We also collected several resources and opinions around the experience of Web API features and pain points. We found that most people knew what a Web API was, but still felt that they could benefit from some form of introductory materials.
For this post, we put together a version of the survey that can be used to run your own internal research.
Ways of sharing knowledge
We discussed the different methods we could use to facilitate this shared understanding.
We thought that a workshop would be an ideal way to bring people across the company up to speed. Workshops cannot realistically be run on a regular basis due to the investment of time needed from attendees. The main advantage is the ability to bring a larger group of people up to speed at the same time. Workshops allow us to create a resource that is easy to present, and can be delivered repeatedly.
Series of blog posts
As a static resource, blog posts are great as they allow for self-directed study and do not require the same time investment as a workshop. Producing a series of posts benefits external readers, not just the team at Made Tech. Ultimately, our goal is to ensure a level of shared knowledge across the business and while a series of posts could achieve this, using a workshop format would allow for interactivity that a blog post would not.
Guide or Core Skill
By producing a guide or a core skill, we would ensure that our standards for what makes an awesome API are available as a learning resource for everyone. A core skill would also involve coming up with a curriculum of study for people to follow and is a significant investment of time.
We decided to produce a series of workshops with accompanying blog posts. The workshops would allow us to provide a shared knowledge of APIs to everyone at Made Tech, while the blog posts offer a static resource for further reading. We came up with the following structure to deliver on our goals:
- Workshop: What is a Web API?
- Post: What is a Web API?
- Workshop: Consuming APIs
- Post: Consuming APIs deep dive
- Workshop: Developing APIs
- Post: Developing APIs deep dive
- Post: Summary of outcomes and next steps
We’ll see you next time with our post discussing what an API is, what value it can and cannot bring to your application development.