As an Infrastructure Engineer, you’ll be part of a small team of engineers who are ultimately responsible for the production infrastructure which powers our retail brokerage business. We care about the speed and stability of our back-end systems as much as we care about the customer-facing applications we build. Our architecture is consistently evolving as our business grows and we face different technical challenges, but always with a focus on practicality and performance. You'll help to maintain this infrastructure by working on existing configuration management code and troubleshooting the unexpected. You'll work on building its future state by participating in the architectural discussions, building proof of concept systems, writing new configuration management code, and standing up new production systems.
Our infrastructure is a hybrid of self-hosted hardware at multiple colocation facilities and cloud-managed services. We are currently heavily invested in Chef and Terraform as our management tools of choice but are also consistently evaluating new technology.
The markets are open 24 hours a day, 5 days a week and our customers are trading throughout. We engineer for durability, but if you're looking at this job posting you realize that occasional outages do occur. The infrastructure and development teams work together to troubleshoot these issues and as such, there is a very occasional off-hours component to this job.
What You'll Do:
- Use configuration management tools (primarily Chef and Terraform) to build and maintain a hybrid infrastructure hosted both at colocation facilities and in the public cloud.
- Work directly with the development team to build supporting infrastructure for specific new application functionality.
- Run proof of concept projects on early-stage infrastructure improvements to validate the feasibility of an approach, evaluate performance, and spike an implementation.
- Manage a curated set of open source tools (PostgreSQL, RabbitMQ, Redis, etc.) via both configuration management tools and direct troubleshooting when required.
- Manage telemetry (graphite, grafana, collectd, prometheus), log aggregation (Elastic Stack), and monitoring tools (Sensu) via both configuration management tools and direct troubleshooting when required.
- We're a mandatory peer review organization and you'll be expected to include reasonable testing (inspec / chefspec) in all of your work.
- Help to maintain existing build/deploy pipelines for both configuration management and application development (we are currently leveraging Jenkins).
- Implement security initiatives and follow security best practices.
Who You Are:
- Experience with declarative configuration management tool(s) like Chef, Salt, Puppet or Terraform.
- You should enjoy or at least be comfortable working with critical production systems where real revenue is at stake.
- You must be able to work as a part of a team, both giving feedback to more junior team members and taking direction from more senior team members.
- You must be able to make good critical decisions balancing technology, frameworks, strategy, and practical constraints.
- You must be able to learn quickly in areas where you don't have deep expertise.
- Sustainable workday
- Daily catered lunch when in the office
- Full kitchen with snacks and beverages
- Dog-friendly office
- In-building gym
- Park-like roof with games and herb-garden
- CTA stop a block away, Shuttle to/from Metra
- Monthly dev outings (e.g. escape rooms, movie nights, ax-throwing, laser tag, bowling, etc.)
- Located in the West Loop, Chicago's growing center of tech, great cuisine, and high-end bars
The tastytrade family of companies (tastytrade, tastyworks, dough, quiet foundation, and The Small Exchange) empowers individual investors by providing educational media, intuitive and powerful trading software, high-speed order execution, innovative derivatives products, and portfolio guidance. The diversity of our offerings and the technology that powers them provide our engineers with exposure to a broad set of tools and the opportunity to dig deep into specific problems. We are an ideal environment for those who are self-motivated, engineering-focused, pragmatic, and who truly enjoy creating and operating large, highly available, and performant systems. Our team is lean at roughly 40 members and we follow a management philosophy that values the autonomy of our engineers.