Linux Platform Engineer
The Linux Platform Engineering team is responsible architecting and engineering the cloud and on-premise Linux platforms that run the bulk of the firms compute workloads. They work with various teams to enable engineers, quants, researchers, and developers to best leverage our Linux and related platforms within the firm. The Senior Linux Engineer should have experience driving standardization through robust automation, testing and in depth monitoring. The role requires in depth knowledge of Linux platforms including performance optimization, security and management at scale. Experience automating the deployment of services that span physical Infrastructure, configuration management, on to the application, is required. The delivery of a platform must incorporate automated testing, and reviews to ensure consistency, as it moves through SDLC stages. This role will drive the development standards and prioritization of engineering efforts towards a common goal. In addition to general compute platforms, the team will be responsible for HPC platforms, and low latency trading platforms co-located with exchanges. This candidate will ideally have experience with bare metal, hypervisors, containers, and public cloud platforms.
Principal Responsibilities
1. Manage systems efficiently at scale through standardization, automation, testing, and in depth monitoring
2. Enforce development standards for source control, testing, and continuous integration for infrastructure, OS, patches, and configuration management
3. Develop self-service pipelines for deploying infrastructure and platforms that developers and portfolio managers can integrate with
4. Work with business owners to regularly re-prioritize the book of work, while delivering both tactical and long term objectives
5. Develop well defined processes for testing and integrating new technologies to meet both business and technical needs
6. Drive the elimination of operational tasks through automation and self service
7. Drive efficient utilization of resources through metrics and reporting
Qualifications/Skills Desired
8. The candidate should have in depth knowledge of Linux systems administration, networking, and security, including automated configuration and state management, and orchestration across systems
9. Experience working with configuration management driven administration using tools such as Chef, Puppet, Salt, or Ansible is preferred
10. Experience working with containers and container services (eg docker, podman, kubernetes) is also a significant plus as is familiarity with tools for testing build automation
11. Experience working with bare metal servers and public cloud technologies, AWS is a plus
12. Experience working with software defined (eg lustre, ceph) and appliance base storage technologies (eq netapp, isilon)
13. Solid programming and scripting skills required. Comfort and experience with BASH, Python, Ruby, Java and C/C++ is big plus
14. Deep understanding of Linux authentication and authorization mechanisms (eq PAM, SSSD, NIS, Kerberos, SSH, Sudo, etc.)
15. Experience working on large collaborative software projects that include source control and SDLC strategies
16. Experience interfacing with REST APIs as well as developing REST APIs is highly desired
17. Experience and skills troubleshooting and performance tuning hardware and operating systems
18. Experience tuning systems for high throughput and low latency
19. Experience with building and debugging kernels
20. Understanding of networking and protocols including TCP, UDP, HTTP, DNS, DHCP, NFS, NTP, PTP, and ability to leverage packet captures for troubleshooting
21. Understanding of encryption, PKI, and certificate and key management is a plus
22. Good team player with a strong willingness to participate and help others
23. Strong interpersonal and written communication skills