In my former role as a software engineer at XYZ Company, I frequently had to juggle foundational engineering tasks alongside the creation of new features. The environment was dynamic, characterized by a steady influx of fresh ideas while also necessitating the upkeep of robust existing systems. To tackle this challenge, I began by gaining a comprehensive understanding of the business requirements and project objectives, which helped me effectively prioritize my tasks. I believed that establishing a solid foundation with well-organized, efficient, and scalable code was essential for facilitating the seamless development of new features in the future. However, I also recognized the importance of innovation for the growth of the company. As a result, I dedicated about 60% of my time to foundational work, which encompassed refactoring, optimizing, and testing the existing code, while the remaining 40% was focused on developing new features. This allocation was flexible and adjusted according to business and product needs. Maintaining regular communication with the product manager was crucial, as it allowed us to modify priorities as necessary.