Software Engineer II - Backend

 Published 8 days ago
    
 United States
Apply Now Please mention DailyRemote when applying

Disclaimer: Before you apply, please make sure the job is legit.

Attempting to apply for jobs might take you off this site to a different website not owned by us. Any consequence as a result for attempting to apply for jobs is strictly at your own risk and we assume no liability.

About the Role

In a cloud software world, who you are and what you have access to determines the risk associated with your accounts being compromised, Abnormal Security aims to build a comprehensive tool to understand the employees of our customers, and aid security professionals in assessing the risks and threats impacting their employee base. Help us build a new layer of protection that will give enterprises the same level of security for their cloud offerings as Abnormal Security’s industry leading products do in the email security space. 

 

We’re looking to add a Backend Engineer to our team of world class engineers. The individual in this role will shape and elevate our Knowledge Engines Platform team while working closely within the Behavioral Security Products division.As a Backend Engineer of the Knowledge Engines Platform team, you will: 

  • Build out performant APIs to serve consistent data that serve as sources of truth for many systems in abnormal
  • Establish data pipelines that ensure our data is updated regularly and reliably
  • Enhance our frameworks to allow us to make changes to our APIs and datasets in an agile manner
  • Provide operational support to maintain a high level of system uptime and performance
  • Create a magical work environment with colleagues and memorable interview process for candidates
  • You are someone who wants to make an impact. You are passionate about solving customer problems and have built up a base of skills in backend and distributed systems development to do so. You want to apply those skills on a problem that leaves the world in a better place. 
  • We are a scrappy team: we are building multiple systems from scratch - this means you should be comfortable with a level of uncertainty beyond what you’d find at a more mature company or even a more mature team at Abnormal. Many of our projects will come with vague requirements across multiple teams, and we expect this engineer to be able to refine the requirements from the teams by reaching out to them to make sure we fulfill their needs.
  • We are also not only a remote team, but a very distributed team, as such you will need to have excellent communication skills across both verbal and written mediums. You will need to be just as comfortable on a zoom call as writing a 1 pager project proposal to be shared across the team for technical feedback. 

Must Have Skills

  • Experience working with building and operating distributed systems and services
  • Experience working with data pipelines, both event-driven and synchronous
  • 3-5 Years of overall software engineering experience
  • Experience with relevant tech stack:
    • Language: Golang, Python
    • Platform: AWS
    • Framework: Spark
    • Experience with Storage / Data Pipelines

 

What You’ll Do

  • Design and Development:
    • Build and maintain high-throughput, low-latency systems that process 100s of millions of events per day to enable detection to identify notable events
    • Enhance our frameworks for improving detection efficiency and effectiveness
    • Develop robust and scalable backend integrations with external applications

You will be relied upon to own the delivery of complex features for a Standing Team -- to design, decompose, execute, and launch. You will play the role of a highly capable feature lead, able to take a clearly defined business problem, and design a technical approach to implement.

  • Testing and Debugging:
    • Conduct thorough testing of applications, including unit testing and integration testing.
    • Use debugging tools and techniques to diagnose and fix issues in a timely manner.
  • Support and On-call:
    • Provide technical support to troubleshoot and resolve issues reported by users or identified through monitoring systems and participate in on-call rotations.
  • Collaboration and Communication:
    • Communicate effectively in Async manner with team members to provide updates, discuss challenges and propose solutions.
    • You will be participating in code reviews to maintain code quality and in system design discussions.
  • Continuous Learning and Improvement:
    • Actively contribute to knowledge sharing within the team and participate in professional development activities.

 

 

Ace Your Job Interview

Read our advice on how to answer the most common interview questions.