Lead Software Engineer at Allstate
Lead Software Engineer
- Category: Information Technology
- JOB #: 433642-en_US
- POSTED DATE: August 17, 2020
BEGIN APPLICATION PROCESS
The world isn’t standing still, and neither is Allstate. We’re moving quickly, looking across our businesses and brands and taking bold steps to better serve customers’ evolving needs. That’s why now is an exciting time to join our team. As a leader in a corporation with 83,000 employees and agency force members, you’ll have a hand in transforming not only Allstate but a dynamic industry. You’ll have opportunities to take risks, challenge the status quo and shape the future for the greater good.
You’ll do all this in an environment of excellence and the highest ethical standards – a place where values such as integrity, inclusive diversity and accountability are paramount. We empower every employee to lead, drive change and give back where they work and live. Our people are our greatest strength, and we work as one team in service of our customers and communities.
Everything we do at Allstate is driven by a shared purpose: to protect people from life’s uncertainties so they can realize their hopes and dreams. For 89 years we’ve thrived by staying a step ahead of whatever’s coming next – to give customers peace of mind no matter what changes they face. We acted with conviction to advocate for seat belts, air bags and graduated driving laws. We help give survivors of domestic violence a voice through financial empowerment. We’ve been an industry leader in pricing sophistication, telematics, digital photo claims and, more recently, device and identity protection. We are the Good Hands. We don’t follow the trends. We set them.
THIS OPPORTUNITY IS AVAILABLE NATIONWIDE FOR HOME BASED WORK
In this role, you will lead a software engineering team within the Product Solutions development team delivering the next generation of Allstate products. You will architect and design digital products using modern tools, technologies, frameworks, and systems. You will apply scientific and technological knowledge, methods, and experience to the design, implementation, testing, and documentation of complex software systems. You will own and manage running applications in production, and ultimately be accountable for the success of the digital products through achieving KPIs. Additionally, you will coach, lead, and direct developers, testers, designers, and more. You will consult and coordinate efforts with end user groups, architects, product managers, and other teams.
- Participate in inceptions and iteration planning meetings, infusing backlogs with technical input working in close partnership with the product manager
- Leads and participates in daily site, cross-site, and product team standups
- Leads and participates in retrospectives; demonstrating and encouraging each participant to provide feedback with empathy
- Partners in collaboration and strategy alignment across product portfolios (cross-product) in partnership with product managers, other peers and key stakeholders
- Serves as an expert on one or more business domain and a distinguished advocate of multiple technology stacks and shares that knowledge across organizations
- Coaches the team and leads practices of Agile development methodologies and test-driven development in writing software and building products
- Establishes continuous integration, continuous delivery, and continuous deployment pipelines and practices
- Provides support for software products in user environments
- Ensures code quality through performing peer reviews and conducting one-on-one mentoring sessions
- Hands on experience and accountability architecting, designing, implementing and delivering large scale distributed systems and/or applications for the cloud, including microservices architectures and 12-factor principles
- Experience developing software in different programming languages, and demonstrated ability to quickly learn new languages, including but not limited to Java (Spring), .NET
- Experience and knowledge in developing REST APIs including tooling for documentation (swagger, REST-docs, openapi spec), versioning, service discovery/registration, testing and management; experience using API gateways a plus
- Experience and knowledge in web and API security including authentication, authorization, OAuth, and SAML
- Experience in backend development design and implementation; database (relational, NoSQL, caching), messaging (e.g. Kafka) and big data development, implementation and optimization
- Experience working with data via data constructs (XML, JSON, AVRO).
- Knowledge and experience using distributed version control systems (git), artifact management systems, build and packaging systems (maven, gradle, npm, artifactory, etc.) and continuous integration tools (Jenkins, TravisCI, Concourse, Bamboo, GoCD).
- Experience working in a cloud environment such as AWS, Pivotal, etc.
- Experience leading an Agile environment (Scrum or XP preferred) using Continuous Integration/Delivery
- Experience in Test Driven Development; including knowledge and experience in testing frameworks like junit, mockito, and other like technologies
- Strong verbal communication and collaboration skills
Education & Experience
- 5+ years of related experience
- A college degree or equivalent experience in Computer Science or similar field
Sign up for Daily Remote Job Alerts!