About the Position
We are looking for Linux Engineers to join the team that maintains the critical infrastructure underlying the rest of Jane Street’s technology. Our group includes hard-working Systems Engineers, Administrators and Programmers, tasked with maintaining and improving the platform that powers Jane Street’s production trading systems. Our mix of in-house and open source software allows you to investigate and innovate at every level. On any given day, you could be debugging kernel performance, developing management tools, or resolving production issues in real time. Diving into tricky systems problems is our specialty.
Deployment automation, scalable configuration management, and obsessive monitoring are the focus of some of our ongoing projects. We automate as much of our work as we can, but not because we’re lazy. We find that automation reduces our error rate and overall workload – plus, we think it’s fun.
Working in our group provides opportunities for involvement with almost every other facet of the company. We work directly with colleagues in trading, technology, and operations to build and maintain systems with a firm-wide scope. Using feedback from other groups and our custom monitoring tools, we strive to resolve production issues quickly, perform comprehensive root-cause analyses, and integrate long-term fixes in a clean and robust way.
We don’t expect you to come in with deep experience – we’re happy to hire smart problem solvers and teach them what they need to know. You’ll train alongside our more seasoned team members in a hands-on capacity, learning how we make tangible and immediate improvements to our infrastructure every day.
- Bachelor’s degree in Computer Science, Software Engineering, or other technical discipline, or equivalent experience
- Experience managing/troubleshooting Linux systems in a home, work, or school environment
- Exposure to Linux environments through past experience in either software development, IT operations (Helpdesk, Technical Support, DevOps, etc.), or a similar field
- Interested in systems programming and administration and a desire to expand these skills
- Willing to learn OCaml, our programming language of choice (no prior experience with OCaml is required, though)
- Able to analyze and deconstruct technical problems
- Knowledgeable about operating system fundamentals, especially Linux
- Confident with the Unix command line and basic shell scripting
- Has a basic understanding of network protocols and can perform basic troubleshooting
- Comfortable with fundamental programming concepts
- Practical experience with modern Linux systems and systems programming concepts (e.g., C, sockets, virtual memory, process life cycle) is a plus
- Intermediate/advanced knowledge of troubleshooting tools and techniques (e.g., gdb, perf, DTrace, or SystemTap) is a plus
- Intermediate/advanced programming experience in any language is a plus
- Fluency in English required