Skip to content
Back to case studies
SanitizedSecurity2023

Security Automation

Monthly PDF scans + post-breach discovery → continuous scanning, <5s detection, CI gates devs actually use.

Role
SDE-II
Context
Cybersecurity / SaaS
Duration
7 months
Team
5 engineers + 1 SDE-II (me)

Tech stack

  • Python
  • FastAPI
  • React
  • TypeScript
  • PostgreSQL
  • Redis
  • AWS Lambda
  • SNS
  • SQS
  • Docker
  • GitHub Actions
Executive summary

Business problem and production context.

Business problem

Security teams lacked visibility into API-layer threats. Manual security reviews took weeks, vulnerability backlogs grew faster than they could be triaged, and there was no runtime protection. Threats were only caught post-breach in log analysis.

Architecture decision

Developed Python backend services for automated API security scanning and threat detection. Built a React security dashboard with real-time threat visualization, risk scoring, and compliance status tracking. Implemented event-driven alerting with SNS/SQS for instant notification on critical vulnerabilities. Improved CI/CD pipeline efficiency by 25% with automated security gates.

awsAWS Account / sec-pipelineRequestResponseCODE + TRAFFIC SURFACEDETECTION WORKFLOWFINDINGS + RESPONSE12345678WAFAPI edge rulesAPI GatewaymTLS + JWTGitHub ActionsPR gateLambdaruntime scannerInspectorECR + EC2 scanGuardDutythreat detectSecurity Hubcentral findingsEventBridgeauto remediationDynamoDBpolicy + audit logCROSS-CUTTING: <5s detection target · PR fails on critical · Per-team severity SLA · Slack alert by owner
What Rahul owned

The useful proof is the decision surface, not only the result number.

These are the parts of the work that show production judgment: ownership, constraints, rollback, cost, and observability.

Owned scope

  • Security automation around cloud posture, guardrails, and response workflows
  • Least-privilege and alerting decisions that reduced manual review pressure
  • Operational handoff so alerts pointed to owners and action, not noise

Evidence artifacts

Security automationIAM guardrailsAlert ownershipRemediation workflow
Constraints

What would fail first?

Every project has constraints. The useful work is naming them early enough that rollback, cost, and ownership are designed before an incident.

Signal quality

Security automation had to reduce ambiguity instead of flooding teams with low-value alerts.

IAM risk

Permission drift needed clear boundaries and reviewable remediation paths.

Ownership

Findings needed an owner and a response path, not only a dashboard entry.

Decision table

Trade-offs accepted on purpose.

Option
Decision
Reason
FastAPI vs Django
FastAPI chosen for async request handling, critical for real-time security scanning with high concurrency
FastAPI vs Django: FastAPI chosen for async request handling, critical for real-time security scanning with high concurrency.
PostgreSQL vs DynamoDB
PostgreSQL for complex security queries with JOINs across vulnerability, asset, and compliance tables
PostgreSQL vs DynamoDB: PostgreSQL for complex security queries with JOINs across vulnerability, asset, and compliance tables.
Real-time vs batch scanning
hybrid approach with real-time for critical paths and batch for comprehensive weekly audits
Real-time vs batch scanning: hybrid approach with real-time for critical paths and batch for comprehensive weekly audits.
SNS+SQS vs EventBridge
SNS/SQS for simpler fan-out pattern suited to alert routing across multiple channels
SNS+SQS vs EventBridge: SNS/SQS for simpler fan-out pattern suited to alert routing across multiple channels.
Risk table

Production risks and how they were controlled.

Risk
Mitigation
Owner
Alert fatigue
Prioritized high-impact findings and attached remediation ownership to alert paths.
Security + platform
Over-permissive automation
Kept automation permissions scoped and reviewable through IaC.
Cloud security owner
Findings never closed
Connected detection to owner, severity, remediation, and verification.
Service owner
Implementation approach

Small steps, visible changes, fewer surprises.

  1. 01

    Analyzed existing security workflow: manual Burp Suite scans triggered monthly, results emailed as PDFs, no centralized tracking or prioritization.

  2. 02

    Built FastAPI backend with async request handling for real-time API endpoint scanning. Each scan runs in under 5 seconds for standard REST APIs.

  3. 03

    Designed PostgreSQL schema for multi-tenant vulnerability tracking: assets → scans → findings → remediation status, with row-level security per organization.

  4. 04

    Implemented event-driven alerting pipeline: Lambda processes scan results, classifies severity via custom ML model, fans out via SNS to Slack/PagerDuty/email based on org preferences.

  5. 05

    Created React dashboard with real-time WebSocket updates showing active threats, risk score trends, and compliance status against OWASP Top 10.

Result

Before and after.

Scan Frequency
Monthly (manual)
Continuous (automated)
Time to Detect
2-4 weeks
<5 seconds
Vulnerability Backlog
200+ untracked
Zero (all triaged)
CI/CD Security Gates
None
Automated on every PR

Rollback path

Automated remediation needed dry-run and rollback behavior before it touched production resources.

Cost considerations

Cost came mostly from scanning cadence, log volume, and security tooling scope.

Observability notes

The useful view was findings by owner, severity, age, and remediation state.

Related services

Forward Deployed AI EngineeringAWS Production Architecture ReviewGenAI / RAG Production Readiness

Have a similar production problem?

Send the current architecture, bill concern, deployment pain, or GenAI reliability issue. I will help you find the first real bottleneck.