Software Engineer II - Detection - Abnormal
Chicago, IL 60290
About the Job
At Abnormal Security, we are on a thrilling mission to safeguard the worlds largest enterprises against a vast range of relentless email attacks. We protect our customers against adversaries who are constantly evolving their techniques and tactics to outwit and undermine the traditional approaches to Email Security. That’s what makes our novel behavioral-based approach so…Abnormal. Abnormal has constantly been named as one of the top cybersecurity startups and our behavioral AI system has helped us win various cybersecurity accolades resulting in being trusted to protect more than 15% of the Fortune 500 (and ever growing).
As a Software Engineer II on our team, you will face the exciting challenge of building and managing the foundational infrastructure that drives detection for our inbound email security product. This infrastructure needs to be scalable, extensible, and user-friendly. You will collaborate closely with ML Engineers, Data Scientists, and fellow Software Engineers to minimize the risk and impact of efficacy degradation caused by uncontrollable factors. Your efforts will ensure our inbound email security product is fault-tolerant and resilient against outages. Your contributions will directly influence the success of our Email Security product and Abnormal as a whole.
What you will do
• Standardize overall message detection flow and decisioning logic and allow our infrastructure to scale with an increasing number of customers, messages, signals, and detectors
• Build tooling and infrastructure that will enable engineers to push changes confidently and safely
• Develop tools and mechanisms that provide insight into detection efficacy and generate actionable steps to maintain high performance
• Guarantee seamless integration with other Abnormal products (e.g., Abuse Mailbox), and present detection outputs through a standardized interface for use by other Abnormal solutions.
• Write code with testability, readability, edge cases, and errors in mind biasing towards simple iterative solutions
• Write and review technical design documents
• Participate in Sprint planning, code reviews, standups, and other aspects of the software development life cycle
Must Haves
• 2+ years experience designing and building software applications
• Experience with large scale systems with an emphasis on data intensive applications that require high availability, throughput, and low latency
• Experience with SQL and NoSQL databases such as PostgreSQL, DynamoDB, Redis, etc…
• Experience debugging using log analytic tools, metrics, and other signals
• Proven experience translating business requirements into software requirements and delivering high quality implementations
• Strong ability to independently solve complex problems
• Ability to work effectively with cross-functional teams
• BS degree in Computer Science, Software Engineering, Information Systems or other related engineering field
Nice to Haves
• Experience with Go and Python
• Experience in the cybersecurity industry, financial fraud, application security, or related industries
• Experience with big data, statistics, and Machine Learning
• Experience with Airflow, Kubernetes, Kafka, Spark, Pandas
• Experience with algorithms and optimization