Highlights
- Continued Partnership with the Company Operating the Top Landmark in Seattle, WA: Space Needle Ticketing solution is the second project delivered by SPD Technology, following a mobile app with AR/VR features embedded.
- Modern and Versatile Ticketing Solution: delivered a cutting-edge ticketing app with the main system and admin panel, different sales channels including web, kiosk, and software for local ticket sales. Additionally, we introduced a media platform, a photosystem that allows users to find their photos from Space Needle using a ticket and share them via email.
- 3x Performance Boost and Less Than 1,5 Seconds API Response: through switching to micro services and developing new features, we significantly enhanced the system’s performance and enabled the client to deliver top-notch customer experience to Space Needle Tower guests.
Client
The client is a business operating Space Needle, an observation tower in Seattle, WA, in the United States. The construction of the tower was completed in 1961, and it has since become a must-see landmark in the State of Washington. Approximately 1.3 million guests visit the Space Needle annually, and over 60 million visitors have visited the tower since its inauguration.
Previously, we delivered an Augmented Reality mobile app for the client. Satisfied with the product and our team’s performance, the client engaged our company to streamline the composite ticketing solution, we provided maintenance for.
Product
The product is a ticketing system built from the ground up. It provides integration with sales partners, as well as offers guests entertainment features including photos, images, and videos.
The main goal of the product is to help manage and improve the ticketing sales process for the client, replacing an existing 10-year-old solution with monolithic architecture and legacy technologies, which made it impossible to make changes to the solution’s business logic or expand it by adding new functionalities.
Key product components include:
Ticketing sales system:
- API
- Web Sales and Admin Part modules in the form of a Web Solution
- Kiosk Sales module as a Web Solution with the integration of a print server, scanner, and credit card reader
- Box Office sales module as a Desktop App, integrating a print server, scanner, and credit card reader
- Internal mobile app on iOS
- The Reporting System as a Web Solution.
Photo engagement system:
- API
- Admin Part in the form of a Web Solution
- Desktop apps for communication with camera devices.
Goals and objectives
- Splitting an Existing Monolith System into Microservice Architecture: Break down the monolithic system into several smaller, independent microservices to enable individual components to scale independently, provide easier maintenance, and unlock flexibility in the technology stack and development methodologies for each microservice.
- Rewriting and Migrating Old Back-end Services on .NET Core: Rewrite existing Back-end services using .NET Core and transite them to a microservices architecture for improved performance, better scalability, and resource efficiency.
- Creating New Modern Web Apps After Splitting Monolith System: Develop modern web applications leveraging the microservices architecture to provide a better user experience and overall efficiency of the business-critical functionality.
- Providing Azure Infrastructure Improvements, Costs Optimization, and Creating CI/CD: Optimize infrastructure to match actual usage, reducing unnecessary expenses. Enhance the reliability and availability of services through improved Azure infrastructure and also utilize Continuous Integration/Continuous Deployment (CI/CD) pipelines to automate the software delivery process, ensuring rapid and reliable releases.
- Rewriting Internal Legacy Mobile App to New Modern iOS App: Leverage the latest iOS technologies and features for building an app with improved functionality, visually appealing interface, as well as great responsiveness and performance.
Project challenge
- System Stability: implement robust load balancing, caching mechanisms, and scalable infrastructure to handle peak loads, since the Space Needle is a top tourist destination with a substantial influx of visitors and ticket sales. Managing high traffic loads while maintaining system stability can be very challenging.
- Keeping the System Ever-Green and Ready for Updates: adopt a gradual approach to modernization, focusing on one component at a time, covering all elements of the system developed over the years. We decided to design the system’s architecture with scalability in mind, embracing microservices and modular components, as well as creating boundaries between legacy and a modern system, allowing for smoother integration and evolution over time.
Solution
We started with analyzing the customer’s requirements for the new features to be developed and proposing possible solutions based on the current architecture and project specifics. Targeting the critical business needs, we prioritized feature development effectively and delivered solutions that added significant value to our customer and end-users.
In addition to that, our main activities included fixing failures in the existing system and considering requests from the operations team to help with system configurations.
For this project, we assembled a team of 9 experts including:
- 2 Back-end Developers
- 2 Front-end Developers
- 2 QA Specialists
- A Business Analyst
- A Project Manager
- A Mobile iOS Developer.
80% of our efforts were focused on new feature development, while the remaining 20% were dedicated to maintenance operations.
The development process began with the creation of an API for the ticketing system. This API serves as a central hub for processing ticket sales. It was integrated seamlessly with external payment and ticketing services, including Auth0, Riskified, and CityPASS.
Recognizing the limitations of the legacy web monolith system, we undertook a comprehensive initiative to rewrite the system as a modern solution with a microservice architecture. This initiative aimed to improve scalability, performance, and user experience for both web sales and kiosks.
There was also an old Box Office desktop software. To modernize the ticketing operations and improve efficiency, we embarked on rewriting it into a powerful modern application. This new app integrates seamlessly with peripheral devices such as printers, scanners, and credit card readers to streamline ticket sales and management.
To enhance our development and deployment processes, we implemented Continuous Integration/Continuous Deployment (CI/CD) pipelines for each service and made improvements to Azure infrastructure. These initiatives were aimed to automate and streamline software delivery while optimizing resource utilization and scalability. They also included moving static contents to storage accounts, and moving hosting to Azure Web App, as well as serverless functions.
Tech Stack
- React.js
- Swift
- C#
- .NET 6
- Node.js
- CityPASS
- Riskified
- Azure Cloud
- SendGrid
- PubNub
- Auth0
Our results
We completed the planned scope of work, and significantly improved Space Needle’s ticketing system, streamlining the ticket sales process, enhancing transaction security, and elevating the overall customer experience.
- More Efficient Resource Allocation: we introduced microservices architecture, allowing the client to scale only the components of the system that require additional capacity while leaving others unaffected.
- 3x Performance Boost: due to the implementation of microservice architecture and the development of entirely new components of the system, we achieved outstanding results in improving performance compared to the previously existing legacy system.
- Elevated Customer Experience: we managed to achieve an API response time of less than 1.5 seconds, and, combined with new features and design improvements, it resulted in dramatic positive change in the user experience.
- Expansion of The Business Reach: adding the external payment system and ticketing services functionality to the client’s system has allowed Space Needle to start cooperating with hotels and other market players in the Travel and Leisure industry, thereby enabling Space Needle to tangibly expand their coverage.
Highlights Client The client is a tech-driven recruitment agency, working with leading companies from different industries. Thanks to implementing...
Explore Case