Overview
Full Time
Skills
Sourcing
Reference Data
Kubernetes
RESTful
Forms
Distributed Computing
Collaboration
Brainstorming
Technical Drafting
Mentorship
Computer Science
Software Development
Finance
Software Engineering
Object-Oriented Programming
Management
IPC
Python
Rust
C#
Java
Writing
SQL
Database
PostgreSQL
Caching
Redis
Memcached
Streaming
Apache Kafka
DevOps
Continuous Integration
Continuous Delivery
API
Frontend Development
React.js
Cloud Computing
Amazon Web Services
Agile
Testing
Job Details
ROLE OVERVIEW
The Senior Software Engineer will be a key member of a small, focused enterprise team working to create the Enterprise data platform that BAM's data analysts, data scientists, quantitative investors, and researchers can rely on for sourcing investment and reference data sets. The platform's cloud-native ecosystem includes Dockerized ingestion pipelines running in Kubernetes, RESTful access APIs, a web-based data exploration environment, and downstream client libraries compatible with several languages. The ideal candidate is obsessed with creating high quality software, loves working with data in all its myriad forms, enjoys thinking and debating about the best solutions to complex problems, and has the ability to push forward and get things done. If you're a full-stack developer who gets excited by the prospect of wrapping your mind around a different problem each day, we'd love to chat with you.
Among other things, the Senior Software Engineer will:
Devise and develop solutions that leverage cloud-based data and distributed computing technologies.
Gain a deep understanding of data requirements and utilization for quantitative investment, in order to help drive prioritization and design decisions.
Partner with end-users and collaborate with team members in order to understand and flesh out requirements, as well as provide occasional first level support.
Apply creativity and lateral thinking. Craft high-performance solutions to loading and serving large amounts of investment data.
Work as part of a globally-distributed yet close-knit engineering team. Be an active participant in feature brainstorming, technical design sessions, code reviews, and general interaction.
Mentor more junior members of the team.
Create software that is well-commented, well-understood, well-tested, and well-documented.
QUALIFICATIONS and REQUIREMENTS:
Degree in Computer Science or closely related field, or equivalent experience.
10+ years of professional software development experience. Financial industry exposure a big plus.
A passion for data and experience in applying that passion to high quality data products.
Strong knowledge of software engineering best practices, object-oriented concepts, and the ins and outs of data-focused development.
Strong knowledge of distributed systems, including ins and outs of fault tolerance, state management, consensus, and IPC.
Strong preference for data-oriented programming in Python. Experience with programming in Rust a big plus (C# or Java a plus).
Intermediate or better knowledge of SQL and experience writing production queries against one or more SQL DBMS. Knowledge of PostgreSQL a big plus.
Intermediate or better knowledge of caching techniques. Knowledge of Redis or Memcached a big plus.
Intermediate or better knowledge of distributed event streaming platforms like Apache Kafka.
Experience with basic DevOps techniques, including CI/CD and infrastructure-as-code.
Experience with API design, related data transfer protocols, and front-end development using React or other frameworks a big plus.
Experience working in at least one cloud environment. Familiarity with AWS a big plus.
A team player. We thrive on collegiality and work as a team to deliver high-quality tools for all Balyasny.
Self-starter mentality. We look for team members who are not afraid to experiment, ask lots of questions, and won't get blocked in a fast-paced and agile environment.
Continuous learner, interested in gaining a deep understanding of large and complex systems at every level. Enjoys diving in to find answers to often subtly nuanced problems, formulating creative solutions, and thoroughly testing to understand both positive and negative implications.
The Senior Software Engineer will be a key member of a small, focused enterprise team working to create the Enterprise data platform that BAM's data analysts, data scientists, quantitative investors, and researchers can rely on for sourcing investment and reference data sets. The platform's cloud-native ecosystem includes Dockerized ingestion pipelines running in Kubernetes, RESTful access APIs, a web-based data exploration environment, and downstream client libraries compatible with several languages. The ideal candidate is obsessed with creating high quality software, loves working with data in all its myriad forms, enjoys thinking and debating about the best solutions to complex problems, and has the ability to push forward and get things done. If you're a full-stack developer who gets excited by the prospect of wrapping your mind around a different problem each day, we'd love to chat with you.
Among other things, the Senior Software Engineer will:
Devise and develop solutions that leverage cloud-based data and distributed computing technologies.
Gain a deep understanding of data requirements and utilization for quantitative investment, in order to help drive prioritization and design decisions.
Partner with end-users and collaborate with team members in order to understand and flesh out requirements, as well as provide occasional first level support.
Apply creativity and lateral thinking. Craft high-performance solutions to loading and serving large amounts of investment data.
Work as part of a globally-distributed yet close-knit engineering team. Be an active participant in feature brainstorming, technical design sessions, code reviews, and general interaction.
Mentor more junior members of the team.
Create software that is well-commented, well-understood, well-tested, and well-documented.
QUALIFICATIONS and REQUIREMENTS:
Degree in Computer Science or closely related field, or equivalent experience.
10+ years of professional software development experience. Financial industry exposure a big plus.
A passion for data and experience in applying that passion to high quality data products.
Strong knowledge of software engineering best practices, object-oriented concepts, and the ins and outs of data-focused development.
Strong knowledge of distributed systems, including ins and outs of fault tolerance, state management, consensus, and IPC.
Strong preference for data-oriented programming in Python. Experience with programming in Rust a big plus (C# or Java a plus).
Intermediate or better knowledge of SQL and experience writing production queries against one or more SQL DBMS. Knowledge of PostgreSQL a big plus.
Intermediate or better knowledge of caching techniques. Knowledge of Redis or Memcached a big plus.
Intermediate or better knowledge of distributed event streaming platforms like Apache Kafka.
Experience with basic DevOps techniques, including CI/CD and infrastructure-as-code.
Experience with API design, related data transfer protocols, and front-end development using React or other frameworks a big plus.
Experience working in at least one cloud environment. Familiarity with AWS a big plus.
A team player. We thrive on collegiality and work as a team to deliver high-quality tools for all Balyasny.
Self-starter mentality. We look for team members who are not afraid to experiment, ask lots of questions, and won't get blocked in a fast-paced and agile environment.
Continuous learner, interested in gaining a deep understanding of large and complex systems at every level. Enjoys diving in to find answers to often subtly nuanced problems, formulating creative solutions, and thoroughly testing to understand both positive and negative implications.
Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.