Lead Software Engineer
Brazil · Remote
Posted on Thursday, February 8, 2024
The Lead Software Engineer designs, codes and tests multi-platform application programs, functions, services, and other related software components to meet the end-user’s and business goals of the highest complexity and risk. The incumbent maintains ownership of the software development lifecycle (SDLC) by providing leadership, technical guidance, training and mentoring to others in areas of acquired expertise. The incumbent plans, organizes, leads, supervises, and coordinates the day-to-day activities for the staff within their team. The incumbent is responsible for the efficient application of currently relevant and appropriate emerging technology in the development of quality products within the constraints of time and budget.
Analyze requirements and design solutions for approved projects and change requests of the highest complexity. (20%)
Gather requirement data from various stakeholders and constituencies.
Review, evaluate, organize, and document detailed requirements of the various stakeholders.
Evaluate technical capabilities, options, and strategies.
Develop, document, present and recommend design solutions and alternatives.
Prepare estimates effort and duration for development tasks and activities.
Prepare and contribute toward the preparation of project and product vision documentation.
Schedule regular engineering meetings with Enterprise Architecture to discuss new ideas, issues and ensure technical alignments.
Design/develop system, application, and program code according to business and technical requirements (30%)
Interacts with Enterprise Architecture to validate software and infrastructure components required to implement technical solutions.
Prepare of design documentation; evaluate designs for requirement consistency.
Code and unit test solutions of high complexity and help other engineers in codding activities.
Mentor Software Engineers on best practices of software development.
Evaluate software developed for consistency with best practices, standards, and enterprise architecture (code review)
Assess the stability, the integrity, the performance and the efficient operation of the systems and infrastructure that the team supports.
Plan and develop proof of concepts (POCs) to demonstrate solutions through new technologies and patterns (5%)
Review industry trends to identify applicable use cases for complex business problems.
Design a repeatable pattern for others to follow when the POC is accepted and leveraged in our solutions.
Select/recommend appropriate tools and techniques.
Perform and/or direct and mentor technical implementation.
Analyze the cost/benefit of the solution for viability and report findings to management to assess.
Evaluate outcomes, review findings, and recommend strategies that improve long term system scalability and performance.
Implement solutions (20%)
Adhere to Assurant change management requirements for application and system implementations.
Analyze conditions and approve strategies that effectively minimize implementation risk and/or improve system reliability and performance.
Prepare and/or oversee the preparation of and approve change management and Help Desk documentation according to implementation requirements.
Assure reliable disaster recovery and back-out mechanisms are in place and readily available.
Execute, direct, and approve software implementation activities according to current standards and policies.
Monitor implementations and coordinate and/or direct appropriate response in the event of disruptive impacts.
Oversee day-to-day activities of the Support Team (15%)
In consultation with Manager, establish and monitor development plans, short- and long-term goals for the development team.
Ensure that all processes are documented and that the staff is cross trained.
Oversees requests and incidents for the business.
Provides feedback on performance of development team members to S Managers.
Involve in the hiring and onboarding process for developers
Maintain and enhance knowledge of the business operations and strategic imperatives of Assurant (10%)
Periodically review business goals and operational and strategic objectives
Apply knowledge of the key components and relationships of Assurant products, distribution channels, and customer base
Foster and sustain open communication with business application users and stakeholders.
Adhere to the Assurant Core Principles; pursue achievement of excellence in Core Competencies