Building APIs

The Process

Good REST APIs require a solid understanding of the architecure of your application in order to develop the appropriate implementation strategy. There are 1000 ways to implement an API, but there's only one correct way for your application to behave. I have to know how the application is intend to work before I start building. This gives me the advantage of being able to communicate with my clients intelligently as well as anticipate certain performance characteristics that will require optimization without prematurely spending too much time on them. It's really about smart strategic engineering to me.

From Mockups to API Design

When building APIs, I first take the time to understand your business logic, attempting to become a temporary expert in the features and flows you've designed in your mockups.

My experience as a frontend developer, app developer, and backend developer means I fully understand the implementation of APIs end-to-end. I can read your mockups like a map and anticipate how they will be implemented, even if I am not building the frontend. This is a skill that takes years to develop that separates me from other developers.

Tests are Truth

While I don't strictly adhere to Test Driven Development or related philosophies, I'm a strong believer in having 100% test coverage of backend APIs. In dynamically-typed languages it makes it much easier to refactor code. In general, complete test coverage makes it possible to know your application is working as intended as it grows in complexity and scope. Tests become a source of truth for your app while I'm working on it and for future developers as your team grows.

Django & DRF

Most of the Backend development I do in 2019 happens in Python 3 with Django and DRF. I have strong feelings about DRF, many negative, but given its ubiquity it tends to be the best tool for the job. I'm a pragmatist at heart. :)

Express.js

I also build APIs in Typescript using a Webpack-based toolchain and Express.js for HTTP handling. Depending on the project, I may bring in other higher level tools like Hapi. Never Sails.js, though. Never again.

Ruby on Rails

I've built APIs on Rails 4 -- admittably its been some time but I am comfortable jumping back in and it is definitely interesting to follow what's happening in Rails world for v6. Rails is good tech and I enjoy coding in Ruby.

Need an App?

In addition to APIs, I build iOS and Android apps.

Address

Julius Parishy c/o WeWork
1010 N. Hancock St
Philadelphia, PA 19123