Software Engineer - Lead Build Engineer
at X
π Palo Alto, United States
$127,000-297,000 per year
SCRAPED
Used Tools & Technologies
Not specified
Required Skills & Competences ?
Software Development @ 4 Python @ 7 Statistics @ 4 CI/CD @ 4 Algorithms @ 4 Data Structures @ 4 JVM @ 7 Performance Optimization @ 7 Debugging @ 4 Agile @ 4Details
Are you prepared to join the X team and help build the ultimate real-time information-sharing app, revolutionizing how people connect? At X, weβre on a mission to become the trusted global digital public square, committed to protecting freedom of speech and building the future unlimited interactivity. Our goal is to empower every user to freely create and share ideas, fostering open public discourse without barriers. Join us in shaping this thrilling journey where your contribution will be invaluable to our success!
Responsibilities
As a lead build engineer at X, you will be at the forefront of optimizing and managing our extensive source repository and build infrastructure. Your role will primarily involve developing, maintaining, and enhancing the Bazel build system, along with related services such as remote build cache and build statistics service. This position demands a deep understanding of building software with JVM-based languages, Python, and the challenges posed by third-party libraries and versioning complexities. You will play a pivotal role in shaping the future of our build system, ensuring its reliability and efficiency.
Requirements
We're looking for exceptional engineers who are passionate about our mission and have a strong desire to make a meaningful impact. We value innovation, collaboration, and the pursuit of excellence. The ideal candidate will have:
- 2+ years of experience in software development, with a focus on a large scale build system and large target graphs.
- Strong skills in build tools and technologies, notably Bazel, along with a thorough understanding of remote caching, remote build strategies, and performance optimization techniques.
- A team player who can effectively collaborate with other teams to integrate build systems with CI/CD pipelines.
- Aptitude for identifying and tackling performance and scalability challenges within the build system.
- Comprehensive knowledge of the software development lifecycle, coupled with the ability to support and guide other developers through this process.
Qualifications
- B.S.+ in Computer Science or related field (or equivalent experience)
- 2+ years in large-scale software development, with a specific focus on developer productivity and efficiency.
- Profound understanding of computer science fundamentals, including data structures, algorithms, and concurrency principles.
- Demonstrated adherence to software engineering best practices, including but not limited to agile development methodologies, unit testing, conducting code reviews, comprehensive design documentation, and advanced debugging and troubleshooting techniques.
- A robust understanding of continuous integration processes and a proactive approach towards automation in software development practices.
- Proficiency in JVM-based languages is essential. Additional knowledge of Python or Golang will be considered a significant asset.
- Ability to tackle complex problems, think critically, and offer solutions in a dynamic and fast-paced environment.