Allstate is a company dedicated to protecting families and their belongings from life's uncertainties. The Product Engineer role involves architecting and designing digital products, managing applications in production, and ensuring success through key performance indicators.
Responsibilities:
- 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
- Participate in high-level and low-level component and system designs
- Participate in performance improvements and tech review meetings
- 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 daily practices of using paired programming 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
Requirements:
- Experience and knowledge in developing REST APIs using Java Spring boot, including tooling for documentation (swagger, REST-docs, OpenAPI spec), versioning, service discovery/registration, testing and management; experience using API gateways a plus
- Hands on experience and accountability architecting, designing, implementing and delivering large scale distributed systems and/or applications for the cloud, including MicroServices architectures
- Experience and knowledge in web and API security including authentication, authorization, OAuth, OWASP, OpenID, and SAML
- Experience in backend development design and implementation, database (MongoDB, caching) and Kafka messaging
- Knowledge and experience using distributed version control systems (git), artifact management systems, build and packaging systems (maven, gradle, npm, artifactory, etc ) and Jenkins or similar Continuous Integration tools
- Experience of working in an Agile environment or paired programming/engineering model
- Experience with the test driven approach and writing unit tests for front to back coverage
- Experience with problem-solving and analyzing performance bottlenecks
- 3-6 years of experience
- Experience using Python is a plus