Amazon Leadership Principles — Behavioral Stories (STAR)
Performance issues for a government school (low-end devices)
- Amazon LPs — Customer Obsession · Ownership · Dive Deep · Insist on the Highest Standards · Learn and Be Curious
- Situation — One of our schools reported that teachers were experiencing severe lag while marking attendance on our mobile app. What stood out: thousands of schools used the same feature, but only this one school reported the issue.
- Situation — Instead of assuming a generic performance bug, I scheduled a call to understand their environment. It was a government-funded school where teachers used older, low-end Android devices with limited RAM and CPU. We had mostly tested on mid-range and flagship devices — this exposed a gap in our validation process.
- Task — Although it wasn't assigned to me, I took ownership of finding the root cause and making sure these teachers could work smoothly. The goal wasn't just to fix a bug, but to make the product work for every customer, regardless of device.
- Action — I reproduced the issue by testing on lower-spec devices and profiling the app. It ran well on modern devices, but rendering and navigation were noticeably slower on older hardware.
- Action — I weighed two options. Optimizing the existing app meaningfully within the school's timeline was hard given its size and dependencies. Instead I proposed a lightweight version focused only on the daily attendance workflows teachers actually needed.
- Action — I hadn't done much React Native performance work, so I learned profiling, rendering optimization, memoization, reducing unnecessary re-renders, simplifying the UI hierarchy, and optimizing network requests. I then worked closely with QA to validate it thoroughly.
- Action — Rather than assume it was solved, I asked teachers to use it in their real classroom for two weeks and scheduled a follow-up feedback session.
- Result — Feedback was overwhelmingly positive — attendance marking was now smooth on their existing devices, letting teachers finish daily work without frustration.
- Result — It also made us realize our mobile testing strategy needed to include low-end devices, reinforcing designing software for all customers, not just modern hardware.
- What I Learned — Customer problems are often rooted in their environment, not the software. It strengthened my React Native performance skills and the habit of validating under real-world conditions rather than ideal dev environments.