I've had the opportunity to work on two significant projects with Sword ITS - the Canada Life and CBRE endeavors. These experiences have been both enjoyable and challenging, helping me grow as a developer and fostering a deeper understanding of the intricacies of crafting robust and effective software solutions.
The Canada Life project revolved around enhancing a retirement app that empowered financial advisors to manage data and create plans. Using technologies like .NET Core, Angular, MongoDB, CQRS, Microservices, RabbitMQ, and MediatR, I faced complex challenges head-on.
One of the early challenges was devising a comprehensive testing strategy. With the help of Cypress, I automated testing scripts written by the Test team. This not only streamlined the testing process but also ensured the reliability and quality of the application.
Another hurdle was the tangle of microservices and on-premise integrations, which often led to technical debt. I meticulously addressed this issue, restructuring the architecture and reducing technical debt. This resulted in a more responsive, maintainable, and robust application.
I also had the opportunity to implement features that adhered to strict specifications and regulatory code requirements. This involved a careful balance of innovation and compliance, ensuring that the app was both functional and secure.
In the CBRE project, I focused on creating a web app for managing safety in data centers. Employing technologies like React, TypeScript, Redux, StoryBook, and .NET, I embarked on an endeavor to enhance user experience while ensuring top-notch performance.
Collaborating with CBRE, I revamped the user interface, rebranding it for a fresh look and feel. This required implementing technologies like React and Redux to improve the app's usability and aesthetics.
A key insight came from implementing the Backend For Frontend (BFF) pattern, which allowed me to aggregate data efficiently for both mobile and web clients. This architecture greatly improved the app's responsiveness and user experience.
I also emphasized testing and documentation. By utilizing StoryBook and Jest, I thoroughly documented and tested the component library, ensuring that each piece of the application was robust and reliable.
Through these projects, I've learned that software development is a blend of challenges and joys. The enjoyment comes from creating innovative solutions, optimizing performance, and witnessing an application come to life. However, challenges are equally integral. Devising effective testing strategies, addressing technical debt, and adhering to regulations are all critical aspects of the process.
As I move forward, I carry with me the valuable lessons and experiences from these projects. Working with Sword ITS has provided me with a deeper understanding of the software development process and has fueled my passion for crafting high-quality, well-tested code. With each project, I'm excited to continue refining my skills and contributing to the ever-evolving landscape of technology.
In conclusion, my journey with Sword ITS has been an enriching experience. Navigating through challenges while creating meaningful solutions has been incredibly rewarding. I look forward to the adventures that lie ahead and the opportunities to further hone my craft as a developer.