As a Senior Software Developer, you will collaborate with cross-functional teams to analyze, design, develop, test, maintain, and implement high-quality software solutions. Working closely with product and architecture teams, you will contribute to the full lifecycle application development process, researching technical options for features, providing guidance on findings, and building proof of concepts to confirm the best approach. Your responsibilities will include determining optimal solutions for architecture, efficiency, maintainability, and scalability, collaborating with developers and architects. Additionally, you will aid Product Management in creating product roadmaps and ensuring objectives are realistic and achievable. You will work alongside Principal Engineers to create solution designs following architectural guidance and design, and you will mentor junior developers to foster their professional growth.