What do a caveman, a horse cart, and a Micron developer have in common? They all use archaic tools.
Micron Technology — a global manufacturer of semiconductor devices, headquartered in Boise, USA — currently has numerous monolithic client/server applications and legacy technology that amount to a lot of technical debt. To solve this issue, they decided to migrate from a system deeply entrenched with internally developed thick clients to an API-first strategy using WSO2 API Manager.
The Problem at Hand
Micron Technology has many dynamic link libraries (DLLs) that are deployed throughout 40,000 workstations across the company. Thick client applications are pushed to each desktop and all DLLs, .NET libraries and the issues that come with them need to be managed. By employing an API management layer, they first aimed to simplify the means for migrating and managing this system.
Today, if they wanted to do an enhancement to a DLL, they don’t know who it will impact and can’t easily find out who the owners are. So another key requirement was to have the ability to identify owners and users of those APIs. They also needed throttling capabilities and 24/7/365 uptime was critical. Next, they needed to support all sites with one solution. This includes the front-end site where the semiconductor chips and created and the back-end site where the processed chip is tested, probed and packaged.
They also needed to ensure that standards and best practices for API development and deployment were followed, which proved to be a difficult task considering the paradigm shift for Micron developers. “We need to provide a solution that makes it easy to design, develop, and manage these new web services,” says Alan Pearson, IT Operations Manager at Micron Technology.
The Journey to API Freedom
To create this solution they needed key functionality including security, monitoring, throttling, multi-tenancy, transforming, and routing capabilities - which lead them to WSO2.
They are currently deploying WSO2 API Manager on-premise and are in the process of reworking all their thick application to an API-first approach while providing the guaranteed uptime. They have 10 gateway deployments worldwide, kept up-to-date using subversion sync, with the master publisher and store in Boise, Idaho. Updates to WSO2 API Manager are applied every month using WSO2 Update Manager and Puppet scripts, which has saved them 15 hours of manual work and eliminated the possibility of human error.
They have now enabled core APIs as web services for language agnostic development, which eliminates the need to recreate the wheel for every desktop update (for example from Visual Studio 2010 to Visual Studio 2017). This is done by moving the data access and business logic to the web service.
They also implemented a global server load balancer, which is a self-aware system that sets up an alias and routes users (the developers) to the nearest site based on their location. For example, if a user makes a request from Taiwan, the load balancer would point them to the Singapore gateway. If for some reason that gateway is down, there will be an automatic failover to the Boise gateway. This provides resiliency and guaranteed uptime. In addition to this, they also created a number of usage metrics.
Creating an API Marketplace
Micron Technology didn’t stop there. To really make this API-first approach a success, they needed to educate their developers and make sure usage increased. This was done by applying the concepts of an API marketplace and promoting activities like evangelism, hackathons, and workshops. They built a Center of Excellence (CoE) that was responsible for helping the development community understand what the API gateway was and how to leverage it.
They did dog and pony shows in sites around the world, created manuals, conducted train-the-trainer sessions, and even employed additional training through Yenlo — a WSO2 Premier Certified Integration Partner. An innovation initiative was also introduced. They used an API that translates English to whatever language (the secure tech translator) to provide an overview of the API store and publisher. They then conducted a hackathon that allowed users to create and publish their own web services.
“The cool thing is you could translate English to Klingon [a fictional language in Star Trek], and when I did this is the demo, a few people actually understood what I translated,” says Alan. This shows how relating an educational session to something that their developers were interested in really helped Micron Technology with their onboarding process.
Learning Areas for a Successful API Program
Because it was a major paradigm shift for their developers, providing them with the appropriate training and tools was key. They also had to align WSO2 ownership within the team (from the hardware to the applications) in order to speed up turnover time and tighten the integration. Implementing the global server load balancer was also an important step in ensuring high availability. Additionally, they used Puppet to automate where possible and reduce manual work.
“The other thing I had to do is really go around and sell, sell, sell. If it means doing site visits, visiting with all our developers, and doing on-site training, that's what we'll do to get a successful deployment,” says Alan.
They still have a lot left to do including growing their documentation, continuing their training, supporting DevOps and API lifecycle management, creating a WUM test area and evaluating WSO2’s cloud deployment for external facing APIs.
After an architecture review and use case walkthroughs, WSO2 identified and added product enhancements to the roadmap including access control for an unlimited tier and mediation extensions. “WSO2 does listen and partnering with them has helped out. We’ve had quick turnaround on [support] tickets, they’ve added numerous enhancement requests, and we’ve had on-site architectural reviews that have been really helpful to drive the product forward,” concludes Alan.
Watch Alan’s presentation at WSO2Con USA to learn more.