# Programmers Beware - UX is Not Just for Designers

[Grab](https://yomu.fyi/company/grab) · Corey Scott · Jul 5, 2016

**Type:** Explainer

## Summary

Software engineers frequently overlook user experience when designing APIs, SDKs, and code-level functions. Usability issues arise across various technical interfaces, from mobile apps forced to coordinate multiple round-trip network calls to ambiguous function signatures that obscure boolean arguments. To counter this, engineers can apply a five-question discovery framework to identify user identity, core objectives, user capabilities, ways to reduce user burden, and familiar paradigms. Practical remedies include sacrificing strict RESTful separation to merge mobile endpoints, placing validation logic inside internal RPC servers, and replacing boolean arguments with explicitly named helper functions. Ultimately, treating calling systems, end users, and fellow programmers as users shifts implementation complexity from consumers to servers.

## Context

User experience is frequently relegated to product and user interface designers, leaving the usability of APIs, SDKs, and internal code interfaces neglected.

## Approach / What changed

Evaluate technical interfaces with a five-question discovery survey focused on user goals and capabilities, then optimize interface designs by consolidating network calls, embedding validation on servers, and writing self-explanatory function signatures.

## Takeaways

- Over-optimizing for the action a user performs 80% of the time is preferable even if it makes the remaining 20% more complicated.
- Pushing validation and authorization logic directly into RPC servers prevents client-side code duplication and simplifies caller integration.
- Replacing opaque boolean arguments with distinct, self-descriptive public functions improves code usability for teammates and future maintainers.

**Tags:** [Architecture](https://yomu.fyi/topic/architecture), [Developer Experience](https://yomu.fyi/topic/developer-experience), [REST APIs](https://yomu.fyi/topic/rest-api)

[Read original post](https://engineering.grab.com/programmers-beware-ux-is-not-just-for-designers)
