Senior Backend Software Engineer – Data
Company | Geico |
---|---|
Location | Las Vegas, NV, USA, Seattle, WA, USA, Austin, TX, USA, Los Angeles, CA, USA, San Jose, CA, USA, Miami, FL, USA, Raleigh, NC, USA, Kansas City, MO, USA, Portland, OR, USA, Boulder, CO, USA, San Diego, CA, USA, Bethesda, MD, USA |
Salary | $90000 – $185000 |
Type | Full-Time |
Degrees | Bachelor’s |
Experience Level | Senior |
Requirements
- Fluency and specialization with at least two modern languages such as Java, Spring Boot, Python, Golang, including object-oriented design
- Proven understanding of micro-services architecture and extensible REST APIs
- Fluency in DevOps Concepts, Cloud Architecture, and Azure DevOps Operational Framework
- Experience in existing Operational Portals such as Azure Portal
- Experience with application monitoring tools and performance assessments
- Knowledge of security protocols and products: Understanding of Active Directory, Windows Authentication, SAML, OAuth
- In-depth knowledge of CS data structures and algorithms
- Experience with continuous delivery and infrastructure as code
- Experience building the architecture and design (architecture, design patterns, reliability, and scaling) of new and current systems
- Experience in Web Application Frameworks
- Experience in securing web applications
- 4+ years of professional software development experience within Web frameworks/SDKs/languages such as Java, Spring Boot, Python, Golang, including object-oriented design
- 3+ years of experience with architecture and design
- 3+ years of experience with AWS, GCP, Azure, or another cloud service
- 2+ years of experience in open-source frameworks
- Bachelor’s degree in Computer Science, Information Systems, or equivalent education or work experience
Responsibilities
- Scope, design, and build scalable, resilient distributed systems
- Build product definition and leverage your technical skills to drive towards the right solution
- Engage in cross-functional collaboration throughout the entire software lifecycle
- Lead in design sessions and code reviews with peers to elevate the quality of engineering across the organization
- Define, create, and support reusable application components/patterns from a business and technology perspective
- Utilize programming languages like JavaScript, TypeScript, Java, C#, Python, Go, and Container Orchestration services including Docker and Kubernetes, and a variety of Azure tools and services
- Mentor other engineers
- Consistently share best practices and improve processes within and across teams
- Utilizes developer tooling across the software development life cycle (task management, source code, building, deployment, operations, real-time communication) to perform advanced-level Mobile/Web/UI design, implementation, and maintenance activities under minimal direction
Preferred Qualifications
-
No preferred qualifications provided.