Software Engineer – Streaming Search (Remote)
📋 Role Overview & Responsibilities
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.
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
What You'll Do
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
PandoLogic. Keywords: Software Engineer, Location: New York, NY - 10060
Frequently Asked Questions
How do I apply for the Software Engineer – Streaming Search (Remote) position at CrowdStrike? ▼
Click the “Apply for this Position” button on this page to submit your application directly to CrowdStrike without recruitment intermediary fees.
Is this position eligible for remote work or visa sponsorship? ▼
Yes, this role is 100% remote and open to qualified professionals worldwide.
Are there any candidate fees on Hirely? ▼
No. Hirely is completely free for candidates. We never charge registration fees or placement fees.
Legitimate employers will never ask you to transfer funds, purchase equipment from unauthorized vendors, or pay application/visa fees. Hirely rigorously monitors listings, but always verify communication is from official corporate email domains.
Learn how to protect yourself against employment fraud →