Ready to BE Inspired?
Dive into our world of tech innovation with 'BE Inspired,' a series where we share our journey, knowledge, and lessons learned across various technological frontiers.
In our first article, we delve into the pivotal transition from our old Windows client to a new, modernized, and refined web client—a journey filled with challenges, innovations, and insights.
Introduction
In the dynamic landscape of technology, adaptation and innovation are key. We're excited to share some of our knowledge regarding a pivotal transition in our software's evolution: the migration from a traditional Windows client application to a refined web client. This migration marks a significant milestone for our company and our clients, reflecting our commitment to staying at the forefront of technological advancement.
Background and Motivation
The need to migrate from our windows client was driven by its foundation on increasingly obsolete technologies like the .NET Framework and Windows Forms. This older tech required new developers to learn outdated practices and posed compatibility issues with modern operating systems. Moreover, the industry's shift towards .NET Core and the preference for REST over SOAP for HTTP requests highlighted the necessity for a more accessible and versatile web client. The rising dominance of JavaScript frameworks such as React and Angular further underscored this need, propelling us towards embracing a web-based approach to meet our customers' evolving demands.
Planning and Strategy
Our migration journey began with a clear objective: to replicate the full functionality of the old client in the new web environment, ensuring a seamless transition for our users. Angular emerged as the chosen framework for its robust support for enterprise-level applications, complemented by the modern aesthetics of Google's Material Design. This strategic choice was geared towards not just preserving but enhancing the user experience, setting a solid foundation for future innovations.
Technical Deep Dive
The shift to a web client involved a complete rebuild from the ground up, adhering to Angular’s architectural best practices. One of the most significant technical undertakings was transforming SOAP endpoints to REST, maintaining the integrity of our database interactions. Despite the challenges of adopting entirely new technologies and designing afresh, our team's commitment to learning and adaptation was unparalleled. Hiring experts in JavaScript and design was crucial, as was our reliance on HTTPS and session tokens for security, ensuring that our web client was both robust and secure.
User Experience and Design Considerations
Maintaining the familiar structure of the main view while updating individual views for a more contemporary look was a delicate balance. Our adherence to Material Design not only modernised our interface but also aligned it with the intuitive usability standards our users expect. This thoughtful approach to design ensured that, while the technology behind our platform was evolving, the user journey remained intuitive and engaging.
Deployment and Rollout
Deploying our web client as a Docker container within a Kubernetes cluster on AWS epitomized our commitment to modern, scalable solutions. Our rollout strategy was designed to minimize disruption, allowing users to transition at their pace while still providing access to the legacy Windows client. This gradual approach, paired with active solicitation of user feedback, enabled us to refine and enhance the web client responsively.
Lessons Learned and Best Practices
Reflecting on this migration, a key lesson was the importance of deeply understanding user workflows beyond merely replicating features. Early and ongoing engagement with users, coupled with thorough design reviews, proved invaluable in avoiding usability issues. The transition reaffirmed the critical nature of staying current with technological trends to attract and retain top talent as well as meeting user expectations.
Conclusion
The migration from a Windows client to a web client has not only modernized our platform but also reinforced our dedication to delivering exceptional, user-centered experiences. As we continue to evolve, the insights gained from this journey will undoubtedly fuel further innovations.
Stay tuned to the "BE Inspired" series for more stories of technology, transformation & much more, all from talented individuals at Bejoynd making it all happen.
Michael Hedlund
Senior Frontend Developer