CrowdStrike
Mid-Level Engineer - Distributed Systems OR C++ Experience (Remote)
#WeAreCrowdStrike and our mission is to stop breaches. As a global leader in cybersecurity, our team changed the game. Since our inception, our market leading cloud-native platform has offered unparalleled protection against the most sophisticated cyberattacks. We're looking for people with limitless passion, a relentless focus on innovation and a fanatical commitment to the customer to join us in shaping the future of cybersecurity. Consistently recognized as a top workplace, CrowdStrike is committed to cultivating an inclusive, remote-first culture that offers people the autonomy and flexibility to balance the needs of work and life while taking their career to the next level. Interested in working for a company that sets the standard and leads with integrity? Join us on a mission that matters - one team, one fight.
About the Role:
This is a Software Engineer position on our Cloud Platform team. The role is open to either full-time remote work or one of our office locations.
This role will contribute by collaborating to design and build a high-throughput system to partition, filter, query and join streaming data at the scale of trillions of events per day. Customers of this system will rely on your work to generate everything from high quality training data for large-scale machine learning models to actionable leads that threat hunters can use to track down malicious actors. You'll be joining an agile, distributed team of highly collaborative engineers who work on all aspects of the system from high-level cloud and datacenter architecture down to low-level performance tuning of event handling and everything in between. If you enjoy moving fast, learning new technology, touching all the different parts of a distributed system and tackling hard problems that don't have well-defined solutions, then you'll fit right in.
We're looking for an engineer with strong experience in object-oriented development, solid computer science fundamentals around multithreading, memory, and data structures, and the desire to work on a distributed system at CrowdStrike scale. We are building a large distributed system (using both public cloud and datacenter components) and we rely primarily on C++ (C++17 currently) as our core language to achieve high performance and high throughput. If you are already comfortable in both those domains, you'll be a great fit! If not, we are looking for a candidate who is either a solid C++ developer willing to learn about distributed systems OR a backend developer willing to dive into modern C++. As long as you've got a solid foundation and a willingness to grow, we'll happily help you learn whatever new concepts, frameworks & languages are necessary.
In addition to our C++ foundation, you can also expect a healthy dose of Python in our build, deployment, scripting and automation tools as well as other languages such as Java, Golang and Ruby that you will encounter along the way. We also rely on industry leading tools such as Docker, Apache Kafka, RocksDB, Apache Zookeeper, Apache Helix and more, to run smoothly and efficiently at scale. We are technically fearless and work together to find the best solution for the task at hand.
What You'll Need:
- A background where you've designed, built and operated scalable distributed systems
OR
- Strong experience building production systems with C++
- Recent experience building production systems in a strongly-typed, object-oriented language (e.g. C++, Java, C#, or similar)
- Confidence operating and navigating a Unix/Linux machine with nothing but a command line
- Comfort with Git or similar version control workflows
- Ability to deal with ambiguity in a large, open-ended problem space
- A self-starter "can do" attitude to research solutions, coordinate with customers, collaborate with teammates and solve hard problems with minimal oversight
- An open mind and willingness to learn the parts of our technology stack that are new to you
What You'll Use:
- C++
- Go (Golang)
- Java
- Python
- Chef
- GIT
- Kafka
- Grafana
- AWS Cloud
Bonus Points:
- Hands-on experience with distributed applications built on a variety of data stores (e.g. RDBMS, NoSQL, streaming solutions, queueing solutions, object storage, etc.)
- Hands-on experience building CLI tooling with Go.
- Used core AWS services such as EC2, S3 and IAM or Azure/GCP equivalents
- Created applications with in-memory or embedded key/value stores such as RocksDB.
- Built and deployed C++ applications, especially with modern CMake.
- Monitored applications with tools such as Graphite, Prometheus and Grafana
- Constructed streaming systems using Apache Kafka, Amazon Kinesis, or similar
- Familiarity with Docker, containers or virtual machines
- Prior experience in the cybersecurity or intelligence fields
- Contributed to the open-source community
- Bring your experience and passion for writing code that performs at extreme scale. You will help build a platform that scales to millions of events per second and Terabytes of data per day. If you want a job that makes a difference in the world and operates at high scale, you've come to the right place
#LI-TH1
#LI-MC1
#LI-Remote
Benefits of Working at CrowdStrike:
- Remote-first culture
- Market leader in compensation and equity awards with option to participate in ESPP in eligible countries
- Competitive vacation and flexible working arrangements
- Physical and mental wellness programs
- Paid parental leave, including adoption
- A variety of professional development and mentorship opportunities
- Access to CrowdStrike University, LinkedIn Learning and Jhanna
- Offices with stocked kitchens when you need to fuel innovation and collaboration
- Birthday time-off in your local country
- Work with people who are passionate in our mission and Great Place to Work certified across the globe
CrowdStrike is proud to be an equal opportunity and affirmative action employer. We are committed to fostering a culture of belonging where everyone is valued for who they are and empowered to succeed. Our approach to cultivating a diverse, equitable, and inclusive culture is rooted in listening, learning and collective action. By embracing the diversity of our people, we achieve our best work and fuel innovation - generating the best possible outcomes for our customers and the communities they serve.
All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, or status as a protected veteran. If you need assistance accessing or reviewing the information on this website or need help submitting an application for employment or requesting an accommodation, please contact us at [email protected] for further assistance.