Senior Software Engineer (Backend)

Threat Stack
1 June 2021


Threat Stack enables DevOps and SecOps teams to innovate and scale security by providing full-stack security observability from the control plane up to the application layer. Purpose-built for today’s infrastructure, the Threat Stack Cloud Security Platform® and Cloud SecOps Program℠ combine cloud-optimized intrusion detection, continuous security monitoring, and proactive risk assessment to help security and operations teams detect security incidents, achieve compliance, and secure infrastructure in transition.

We are defining the way Cloud Security is done. We are the only cloud-native continuous monitoring solution that gives users instant visibility into their environment, protecting them in real time from insider threats, external attacks, and data loss. Optimized for cloud deployment, our solution allows growth-driven companies to scale confidently without sacrificing speed or efficiency.

Our platform is built primarily in Scala and leverages Kafka, Postgres, Elasticsearch, Cassandra, Apache Spark, and other high-scale platforms running in Amazon Web Services. We expect you to be excited about learning new tools and technology quickly and are passionate about finding the right solution for the task at hand. We’re looking for someone who knows when and how to dive deep on a project, has experience with distributed service design, data processing at scale, experience with tuning JVM based applications, and is enthusiastic about taking on any task.

What We Offer

  • You’ll be directly influencing and building software that’s processing over 60 billion events per day. We’ve built a lot, our scale challenges keep coming, and we’re continuously improving how we can better handle our growing scale.
  • A cohesive Engineering team where software, test, and infrastructure engineers work side-by-side as we release new code, resolve bottlenecks, and improve our reliability and scalability
  • A team that is committed to continuous learning, improvement, and support
  • An environment which supports innovative solutions. We want your ideas!
  • Scala Academy
    • We have experience onboarding engineers who have never used Scala before
    • Intro curriculum designed to bring you up to speed with current development practices
    • Supportive learning space, question-friendly environment, colleagues who are willing to help

What You’ll Do

  • Bring your knowledge and experience to bear on innovations for complex problems
  • Leverage your skills to make processing data faster, cheaper, and easier to operate
  • Build scalable, resilient, cloud-based services capturing and aggregating streams of data
  • Monitor and improve service performance with our inhouse metrics and log pipeline
  • Work closely with test engineering to build a high degree of confidence in your releases
  • Release your code when it’s ready. We follow a continuous deployment process
  • Be a technical leader for projects of all sizes and be an active participant in design discussions
  • Share your knowledge and skills with the team through demos, pair programming, and mentorship
  • Take a rotation on the on-call response team to respond to production incidents

How We Do It

  • Develop highly performance systems primarily written in Scala
  • Fully own your services from EC2 node selection, performance measurement, and setting service alarms
  • Utilize distributed stream and batch processing for complex, high throughput tasks
    • Akka, Alpakka, Apache Spark
  • Messaging system queues/brokers
    • Apache Kafka, Apache Zookeeper, RabbitMQ
  • Store massive amounts of data in relational and NoSQL databases
    • S3, Elasticsearch, Apache Cassandra, Postgres, Hive, Avro, Parquet
  • Leverage AWS to efficiently solve problems and provide insights
    • Elasticache, RDS, SNS, SQS, CloudTrail, Elastic Map Reduce

What We’re Looking For

  • A collaborative teammate with passion and focus
  • Experience with functional/typed software languages
  • Successfully dove deep and solved numerous complex scale problems
  • Experience building and scaling high-volume, highly-available SaaS solutions
  • Experience developing and scaling data stores for large distributed systems
  • Have designed and developed distributed systems for real-time and batch processing
  • Debugging issues in distributed systems, including monitoring performance and identifying bottlenecks
  • API design (e.g., REST-style Web services) for internal and external consumers
  • Comfortable programming in Unix environments (e.g., Linux and OS X)
  • Experience with databases systems of all sorts, including relational and NoSQL solutions, and informed opinions on when to use them


Source: Remote Tech Jobs

Source: Remote Tech Jobs