Job Description

Summary

As a Staff Software Engineer, you will play a crucial role in enhancing the engineering practices and tooling within our organization. You will be an integral part of leading Gemini’s engineering teams towards modern DevOps practices, both by developing and providing modern automation and operational tooling, and working cross functionally across Gemini’s engineering teams to influence and shape our development practices and culture. The ideal candidate will have experience leading or contributing to the enhancement and improvement of the build tool chain at a leading software company. You will be working closely with peers on the Platform, Security, and development teams, as well as business stakeholders to ensure that our development teams are equipped with the best practices, processes, and tools to deliver high-quality software efficiently.

Responsibilities:

  1. Improve developer feedback cycles by optimizing builds, speeding up compiling and testing.
  2. Develop utilities and patterns to increase developer productivity.
  3. Develop linters and other static analysis tools to increase safety.
  4. Improve feedback cycles at all levels of development (examples: improving the experience of iterating on code locally, deploying to test environments, deploying to production).
  5. Improve organization wide concerns (examples: identifying and fixing build bottlenecks, improving the observability of running systems, language and library upgrades).
  6. Help other technologists at Gemini be more effective in their roles, through tool and library improvements.
  7. Provide technical input and knowledge to the planning, design, and requirements process for new products and features.
  8. Review other software engineers’ code for correctness, style, and information security concerns.
  9. Improve the performance, maintainability, and operations of the Gemini code base by engaging in occasional refactoring and upgrade projects.
  10. Support your team’s production software by responding to an occasional alert or bug report.
  11. Be an expert and guide for Gemini’s best practices in engineering.

Qualifications:

  1. Bachelor’s or Master’s degree in Computer Science, Engineering, or a related field.
  2. At least 8 years of software development experience.
  3. Advanced proficiency in at least one language. We use mostly Scala and C++ on our backend and Typescript on the frontend – it’s great if you’re comfortable in those or if you’re willing to learn. 
  4. Genuinely passionate about working with developers and improving their experience and velocity.
  5. Experience building multi-language monorepo tooling (preferably Bazel).
  6. Experience with the Bazel production ecosystem (e.g. EngFlow, BuildBarn, BuildBuddy etc.).
  7. Experience with the integration between Bazel and IDEs such as IntelliJ and VSCode.
  8. Experience optimizing builds, CI/CD pipelines, and/or test automation.
  9. Experience building useful utilities and abstractions that enable other teams to deliver software faster.
  10. Experience as a Technical Leader within a team, helping evaluating and making tech decisions for the team.
  11. Experience training or mentoring other developers.
  12. The ability to work closely across teams and manage dependencies.
  13. A customer and product-focused mindset, with the ability to make well-reasoned tradeoffs between speed and quality.
  14. The ability to adapt and handle multiple competing priorities in collaboration with peers.
  15. Strong bias for automation.

It Pays to Work Here

 

The compensation & benefits package for this role includes:

  1. Competitive starting salary
  2. A discretionary annual bonus
  3. Long-term incentive in the form of a new hire equity grant
  4. Comprehensive health plans
  5. 401K with company matching
  6. Paid Parental Leave
  7. Flexible time off

Salary Range:

The base salary range for this role is between $172,000 - $215,000 in the State of New York, the State of California and the State of Washington. This range is not inclusive of our discretionary bonus or equity package. When determining a candidate’s compensation, we consider a number of factors including skillset, experience, job scope, and current market data.

Skills
  • C++
  • Communications Skills
  • Development
  • Leadership
  • Software Engineering
  • Team Collaboration
  • TypeScript
© 2024 cryptojobs.com. All right reserved.