Senior Software Engineer - DevOpsNew York We are a high-frequency proprietary trading firm founded in 1998, seeks a self-motivated Senior Software Engineer to join our Development Tools team. The Development Tools team is responsible for liaising with various internal research and development teams to help them become more productive through delivery and support of Client solutions that utilize our hybrid cloud infrastructure.ResponsibilitiesUnderstanding development team needs and evangelizing appropriate open-source and proprietary tools to push the boundaries of automation and productivityLiaising with developers and QA teams to implement efficient and robust frameworks supporting development, test and release workflows for critical trading applicationsScaling up the CI/CD infrastructure using our hybrid cloud while monitoring its health and effectiveness; drive fixes to underlying problems and optimizations to improve efficiencyQuickly detecting, debugging, and resolving build and process failures for non-code related causesSome of the tools and challenges that you'll get a chance to work on include:A user space package manager. We build, distribute and support hundreds of packages used by everyone in Tower.
We now need to scale it to work with thousands of nodes.A smart build system. Tower has a lot of developers working on a lot of code. We need someone to evolve the build system to make builds faster and provide seamless access to code testing/quality tools.A dependency and release management tool.
We have a shiny new tool to help Tower deal with the complexity of millions of lines of code spread amongst multiple repositories being modified by hundreds of developers across multiple timezones.Continuous Integration system. To make sure all of the code that developers are writing is well tested and deployed correctly, we have a growing CI/CD system that leverages a hybrid cloud infrastructure based on Docker and Kubernetes to deal with increasing capacity demand and load.QualificationsA Bachelor's degree in Computer Science, Math, or Physics from a top-tier college or university and at least 6 years or programming experienceProficiency with Python, Bash and/or Go (expertise in at least 2 of them).Thorough understanding of Linux fundamentals and C++ compiling/linking/loading process. Tower is primarily a Linux shop.Deep knowledge of git, git branching, and git workflowsExperience with CI/CD frameworks such as Jenkins, Concourse, Travis, or CircleCIExperience with CMake, Conda, Gitlab/Github and Docker/Kubernetes (preferred)