At Northwestern Mutual, we are strong, innovative and growing. We invest in our people. We care and make a positive difference.
We are seeking a Solution Architect to join our software engineering team focused on delivering exceptional sales illustration capabilities that demonstrate the value and flexibility of Northwestern Mutual risk products.
Reporting to the Engineering Director, the Lead Software Engineer is a key leader of our technology team and the enterprise. You will provide direct architectural and design leadership to a team of 50+ skilled engineers on the Illustrations software engineering team who are delivering exceptional illustrations capabilities that enable Northwestern Mutual Financial Representatives to demonstrate the value and flexibility of our products. You will also provide thought leadership on both strategy and execution for Illustrations systems in the context of a larger enterprise vision. You will ensure delivery of reliable, performant and scalable software systems that take field and client experiences to the next level.
The Lead Software Engineer is responsible for:
- Leading engineering aspects of feature refinement and solution definition for PI (Program Increment) +1/+2 features, including capturing current state, stakeholder interests and concerns, key architecture/design decisions, solution options with pros/cons and recommendations, and intended target/interim states
- Providing architectural leadership to high visibility efforts to evolve our existing UI layer frontend applications to a micro-frontend architecture and enable significantly more parallelization of efforts to build out support for remaining product types and scores of product variations for each type.
- Leading teams to identify and act on architectural and engineering opportunities to improve quality, reduce technical debt and increase the flow of business value delivered
- Maintaining an adequate architectural description (AD) of our systems to support thinking and reasoning about them
- Leading technical proofs-of-concept to innovate; developing core solutions and tooling
- Collaborate across NM to define and execute on technical and product roadmaps
- Leading teams in timely resolution to production and non-production incidents affecting Illustrations systems
- Leading or being a key contributor to technology focused learning opportunities for junior engineers, e.g. book clubs, paired-programming, etc.
A great candidate will meet the following requirements:
- BA, BS, MS in Computer Science, Engineering or related field, or demonstrated equivalent experience
- 10+ years hands-on professional software development experience delivering high availability, low latency distributed enterprise systems
- Extensive knowledge of software systems architecture and patterns of enterprise application architecture and systems integration
- Recognized as a company or industry thought leader in technology and software architecture
- Demonstrated success delivering large initiatives from strategy to completion
- Demonstrated ability to effectively communicate technical risks and tradeoffs to both developers/engineers and non-technical business leaders
- Deep experience developing large scale enterprise systems based on REST style microservices architecture and Cloud infrastructure
- Strong problem solving skills with proven network of internal/external technical contacts
- Deep hands-on knowledge of application development, technology integration, and systems integration, including experience with operations and support aspects
- Prior experience leading/coaching/mentoring engineers and engineering teams
- Excellence in decision making, ideas facilitation, systems thinking, written and verbal communication, and presentation skills; comfort with ambiguity and frequent change; solid experience working well with cross-functional teams
- NodeJS & React, Redux, Hooks, etc.
- Applied experience with GraphQL, including queries, mutations, stitching, federation, code first vs. schema first, etc., Apollo-server and GraphQL client libraries such as Apollo-client, URQL, graphql-dotnet or ChilliCream/HotChocolate
- Domain Driven Design, domain modeling, data modeling
- Test-Driven Development (TDD), Behavioral-Driven Development (BDD), SpecFlow
- GitLab, GitLab Flow and best practices for SCM for large teams with many features
- Distributed in-memory data structure stores and NoSQL databases, e.g. Redis, DynamoDB
- Relational Database Management Systems, e.g. MySQL, Aurora
Additional Qualifications that could be Helpful:
- Performance engineering
- Engineering systems for High Availability and Disaster Recovery (HA/DR)
- Monitoring tools, e.g. New Relic, Dynatrace, and logging tools, e.g. ELK stack (Elasticsearch, Logstash, Kibana
- API Management technologies, e.g. DataPower, Apigee, Tyk, NGINX, et al.
- Asynchronous messaging technologies, e.g. IBM MQ, Apache ActiveMQ, Amazon SQS, Amazon S3, Kafka
- DevSecOps, DORA, CI/CD, GitLab CI/CD Pipelines
- AWS, Kubernetes, Docker, Amazon EC2, Amazon ECS, AWS Lambda, Terraform, Ansible Tower
- Scrum/Agile/SAFe processes, JIRA & JIRA Align
- Insurance domain knowledge, Illustrations knowledge, NM Actuarial Systems rate and multi-use routines familiarity
This job is not covered by the existing Collective Bargaining Agreement.
Grow your career with a best-in-class company that puts our client’s interests at the center of all we do. Get started now!
We are an equal opportunity/affirmative action employer and all qualified applicants will receive consideration for employment without regard to race, color, religion, gender identity or expression, sexual orientation, national origin, disability, age or status as a protected veteran, or any other characteristic protected by law.
FIND YOUR FUTURE
We’re excited about the potential people bring to Northwestern Mutual. You can grow your career here while enjoying first-class perks, benefits, and commitment to diversity and inclusion.
Flexible work schedules
Employee resource groups