Skip to Main Content
Talk Intermediate

Making ENDs meet

Proposal status is Rejected
Session Description

At Observe.AI, we had a lot of issues from finalizing API contract to API integration and keeping the data type in sync from DB to frontend.

We adopted some OSS to automate our tedious flows. We

  1. started using API Specs for finalizing contract.

  2. documented every API Spec in a JSON and exposed it through route (like Swagger)

  3. started generating the API Client, Types and Interfaces out of it (in CI), completely removed human error chances.

  4. started generating Test clients from the Specs, so also automated the test for APIs.

  5. finally started using RTK Query Code Generation, which generates the client and has built in client-side caching

After all these changes, we immensely reduced human mistakes and data related errors and increased our development time from weeks to days.

Fun Fact: We integrated an API (from API contract finalization to prod release), we did in 2 hours, without our existing pipeline it could have easily taken 2 days.

Key Takeaways
  1. Introducing proper API documentation as part of you SDLC, without hurting the project timeline.

  2. Reducing human errors and data issues in production.

  3. Reducing efforts of client-side developer, generating API client with caching in seconds from the API docs.

  4. Generating API happy test cases, reducing some dev time.

  5. Ultimately, reducing the development time of the project, by just using only open source.

References

Session Categories

Engineering practice - productivity, debugging

Which track are you applying for?

Main track

Speakers

Abhishek Raj
Abhishek Raj SDE 2 | Observe.AI

Abhishek has over 5 yrs of exp in developing all kind of software. At Swiggy, he built Instamart and Genie. Currently, at Observe.AI, he is part of the Voice AI team and has built the Voice AI platform from 0 to 1 and now building 1 to X.