Starbucks entered China in force with numerous storefronts and they’re looking to optimize their digital presence in the market. They needed to rebuild their apps and introduce new functionalities to grow and retain their customer base.
Starbucks Corporation is a coffee company and coffeehouse chain seeking to optimize its presence in the Chinese market.
Challenges & Goals
- Build new functionalities for Starbucks apps to expand users’ payment options
- Optimize the client’s digital presence for the Chinese market
- Reworking an existing product without breaking any of the existing features
- Retaining a consistent base of users while introducing a new architecture & features
- Working with legacy code we did not build and needed to understand to start the work
- Work with a huge client and project with an incredibly fast timetable
- Seamlessly integrating services from several other vendors
Wiredcraft partnered with Starbucks to improve both its mobile application offerings and its main website.
Fortunately, most of the design for the mobile apps remained intact and didn’t need to be made from scratch before work could get started. The core of our work involved adding new features while simultaneously improving the user experience. As of the July 2016 releases, Starbucks app users can now use Starbucks Gift Cards and My Starbucks Reward points to make purchases at their local stores using the mobile app. During the engagement, the Wiredcraft team played a role focused on assisting Starbucks product leads in devising and shipping the best possible product. We also provided strategic guidance by setting limits on the addition and design of the features.
The bulk of the Starbucks China website was designed from scratch by our team, which enabled us to provided a well-organized user experience. One big addition we provided was building a user account management section using React. Users can log in from the main page and check their card balances and make adjustments as desired.
- 1 year
- 1,004 Github issues
- 2.2 stars (aggregate user rating before we launched the new version)
- 4.9 stars (aggregate user rating after our version launched)
- 6 projects and counting
Technology & Techniques
- For the backend work, we used Node.js and built interactions with Couchbase and Redis (specifically Kue)
- Instead of using Java or React Native, we used a new language called Kotlin, which made revamping the Android app way less painful
- The iOS app was originally built with a mix of Objective-C, Swift, and Objective-C++. We have been phasing out the legacy code and steadily transitioning the app to run entirely on Swift.
- We devised a lockout system on the fly after some big releases, which prevents users from accessing their account for a short time after too many failed login attempts.
- Starbucks has a ton of users submitting transaction requests simultaneously, so we created a queue for these, allowing the system to process everyone in due course and not break down.
- We created new processes for the team to tackle their work and communicate. Everyone came to love scrums
- Our team was already pretty agile and fast-moving, but Starbucks put us to the test and we really learned how to jump on problems and solve them quickly
- Balancing the needs of multiple departments with the client was quite challenging, but we found best practices for aligning strategies and keeping everyone satisfied
- As mentioned above, this project involved combing through a lot of legacy code. We optimized for this process and established how we can better identify client needs upfront
- This project was a lot of fun as we learned a lot, worked fast, and shipped often
- Thanks to this partnership, we expanded our development team from 8 to 10 and we built specialized teams for developing apps and websites
- We tacked on a new service portfolio for marketing consultation (think SEO, content, social, etc.)