About the company
Abnormal Security is a company that provides security solutions, focusing on protecting customers from email attacks and other threats. The company is expanding its security footprint into identity and AI-agent protection.
Responsibilities
- Build out performant APIs to serve consistent data that serve as sources of truth for many systems in Abnormal.
- Build and maintain high-throughput, low latency systems that process 100s of millions of events per day to enable detection to identify notable events.
- 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.
- Develop robust and scalable backend integrations with external applications.
- Define deliverables towards key projects, de-risking projects and executing them towards key milestones.
- Own the delivery of complex features for a Standing Team -- to design, decompose, execute, and launch.
- Own SLAs/SLOs for our systems and drive improvements.
- 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.
- Provide operational support to maintain a high level of system uptime and performance.
- Provide technical support to troubleshoot and resolve issues reported by users or identified through monitoring systems and participate in on-call rotations.
- Proactively identify inefficiencies in monitoring and alerting systems and address them through efficient solutions.
- Communicate effectively in an async manner with team members to provide updates, discuss challenges and propose solutions.
- Participate in code reviews to maintain code quality and in system design discussions.
- Mentor and coach other junior team members on the team.
- Actively contribute to knowledge sharing within the team and participate in professional development activities.
Requirements
- Experience building and operating highly scalable and highly available distributed systems and services.
- Experience working with data pipelines, both event-driven and synchronous.
- 3+ years of overall software engineering experience.
- Experience with relevant tech stack: Language: Golang, Python; Cloud Platform: AWS; Framework: Spark.
- Experience with Storage / Data Pipelines.
- At least 1 year of experience designing complex distributed systems.
- Proven experience with end to end ownership across various stages of SDLC including requirements gathering, design, development, production support and maintenance.
- Demonstrated expertise in Kafka or comparable high-throughput messaging and streaming platforms.
- Hands-on experience with OpenSearch, DynamoDB, or architecting large-scale search and indexing systems.
- Familiarity with Airflow or equivalent workflow orchestration and data pipeline management tools.
- Background in production observability using Grafana or Prometheus and experience with on-call rotations.
- Proven experience working with agile development methodologies (both scrum and kanban).
- Proven experience working and communicating effectively with cross-functional teams across multiple time zones with remote stakeholders.
- BS degree in Computer Science or related engineering field.
Conditions
- Hybrid work in Bangalore, India.
- Opportunity to work on meaningful customer problems and deliver secure, intuitive experiences.
- Be part of a scrappy team building multiple systems from scratch.
- Excellent communication skills across both verbal and written mediums required.