Position Responsibilities
As a Staff Engineer, you will:
- Focus on a few key areas and provide leadership to the engineering teams.
- Own complete solution across its entire life cycle.
- Design and implement messaging and UI applications using the Java platform and Open Source frameworks.
- Collaborate with engineering team to define the overall system architecture, ensuring scalability, fault tolerance, and performance optimization.
- Act as a technical and thought leader for domains like Messaging, GraphQL API, or data streaming.
- Influence and build vision with product managers, team members, customers, and other engineering teams to solve complex problems for building enterprise-class business applications.
- Accountable for the quality, usability & performance of the solutions.
- Implement monitoring and logging solutions to track system performance and troubleshoot issues.
- Lead in design sessions and code reviews to elevate the quality of engineering across the organization.
- Utilize programming languages like Java, SQL, and NoSQL databases, Container Orchestration services including Docker and Kubernetes, and a variety of Azure tools and services.
- Mentor more junior team members professionally to help them realize their full potential.
- Consistently share best practices and improve processes within and across teams.
Qualifications
- Fluency and Specialization with modern languages such as Java, including object-oriented design.
- Experience in building products using micro-services oriented architecture and extensible APIs.
- Experience building the architecture and design (architecture, design patterns, reliability, and scaling) of new and current systems.
- Experience containerizing applications using Docker or Kubernetes (AKS preferred)
- Experience designing and implementing performance testing with tools such as JMeter or LoadRunner
- Familiarity with continuous delivery and infrastructure as code.
- Experience in leveraging Powershell scripting
- Understanding of Monitoring Portals such as Splunk or Application Insights
- Understanding of Security Protocols & Products: Active Directory, Windows Authentication, SAML, OAuth
- Strong familiarity with GraphQL web services
- Experience and passion for documentation and mentoring junior developers
- Understanding of CI/CD tooling like Jenkins, Gradle, and Artifactory
- Strong problem-solving ability
- Hands-on experience with real-time event-steaming platforms such as Apache Kafka
- Familiarity with NoSQL and Graph databases
- Experience writing unit tests using common testing frameworks and actively contributing to code quality
- Ability to excel in a fast-paced, startup-like environment
- Knowledge of developer tooling across the software development life cycle (task management, source code, building, deployment, operations, real-time communication)
Experience
- 6+ years of professional software development experience
- 3+ years of experience with architecture and design
- 3+ years of experience with AWS, GCP, Azure, or another cloud service
- 4+ years of experience in open source frameworks
Education
- Bachelor’s degree in Computer Science, Information Systems, or equivalent education or work experience
Annual Salary
$110,000.00 - $230,000.00
The above annual salary range is a general guideline. Multiple factors are taken into consideration to arrive at the final hourly rate/ annual salary to be offered to the selected candidate. Factors include, but are not limited to, the scope and responsibilities of the role, the selected candidate’s work experience, education and training, the work location as well as market and business considerations.
GEICO will consider sponsoring a new qualified applicant for employment authorization for this position.