Slide 1

Slide 1 text

Building API Products 1 @samueljabiodun

Slide 2

Slide 2 text

James Samuel ▪ ~8 years of experience making software run ▪ Tech Lead @Tier Mobility ▪ Technical Content Creator ▪ Creator of HubOfML Newsletter ▪ AWS Community Builder 2 @samueljabiodun @abiodunjames

Slide 3

Slide 3 text

API is eating the world

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

API has continued to gather popularity, grew by 100% in 2020 Postman: State of the API Report 5

Slide 6

Slide 6 text

▪ Offers APIs to open up services e.g Twitter, Facebook, Salesforce, etc ▪ API-first companies e.g Stripe, Contentful, Twilio, Algolia etc 6

Slide 7

Slide 7 text

▪ Certain API products struggle to attract users. ▪ Hard to consume and integrates with some APIs. ▪ Some APIs don't live up to expectations. 7

Slide 8

Slide 8 text

8 Postman Report 2020: Obstacles to consuming APIs

Slide 9

Slide 9 text

How do you create APIs developers love to use? 9

Slide 10

Slide 10 text

Good APIs are: ❏ Easy Learn ❏ Easy to use ❏ Hard not-easy to misuse ❏ Easy to read and maintain clients that use them ❏ Easy to evolve 10

Slide 11

Slide 11 text

Good API products make life easy 11

Slide 12

Slide 12 text

How do you make life easy?

Slide 13

Slide 13 text

Understand the “Why” and “How” 13

Slide 14

Slide 14 text

▪ Why do you want to build an API product? ▪ What problem will it solve? ▪ How will it help me achieve my goals? 14

Slide 15

Slide 15 text

Example Goal: Drive usage and monetize internal services 15

Slide 16

Slide 16 text

The goal isn't always obvious …Ask 16

Slide 17

Slide 17 text

Design Matters 17

Slide 18

Slide 18 text

“how quickly developers can get up to speed and start enjoying success using your API” 18

Slide 19

Slide 19 text

➔ Vocabularies: Are your words, terms easy to understand for your users? ➔ Styles: What protocols are you supporting, Rest or GraphQL? ➔ Naturalness & Consistency: ◆ Do your users have to change their usual ways of solving their problems significantly? ◆ Did you follow established standards and conventions? ◆ What level of familiarity will you provide? Are you APIs similar to what your users may have used in the past?

Slide 20

Slide 20 text

“Great API products are designed with rigorous customer focus, a deep understanding of the customers, their needs and desires” 20

Slide 21

Slide 21 text

How to approach API Design ▪ Identify your users & the activities they want to get done. ▪ Break down the activities they want to get down. ▪ Create APIs prototypes and validate with a use-case. ▪ Build clients that use the prototypes. ▪ Validate & re-iterate. 21

Slide 22

Slide 22 text

API Design is a continuous process 22

Slide 23

Slide 23 text

You won't get the first version of your APIs right. Some lessons can't be learned through customer interviews only. 23

Slide 24

Slide 24 text

24

Slide 25

Slide 25 text

Affordance is that property of an object which shows users the actions they can take.

Slide 26

Slide 26 text

No content

Slide 27

Slide 27 text

Get Good at Documentation 27

Slide 28

Slide 28 text

What's one of the first things you look at when exploring or evaluating a third party APIs?

Slide 29

Slide 29 text

● Evaluation ● Integration ● Debugging

Slide 30

Slide 30 text

Evaluation

Slide 31

Slide 31 text

Integration/Getting Started

Slide 32

Slide 32 text

Troubleshooting

Slide 33

Slide 33 text

If you’re providing only one type of documentation, you’re undeserving your users. 33

Slide 34

Slide 34 text

● Who are you creating for? ● What are they trying to achieve? ● Why are you creating this?

Slide 35

Slide 35 text

Get Development Right 35

Slide 36

Slide 36 text

Instead of focusing on CRUD, focus on goals and the sequence of actions required to achieve them.

Slide 37

Slide 37 text

● Scalability ● Maintainability ● Security ● Reliability ● Performance ● Testing

Slide 38

Slide 38 text

38 Your APIs should hide complexities and not expose them

Slide 39

Slide 39 text

39 Is the API service delivering on the strategic goals? Is the API service quality enough to support the strategic goals? Track Effectiveness

Slide 40

Slide 40 text

40 Questions?