Building an Application Security Program from Scratch: A 90-Day Roadmap

You've just been hired as Head of AppSec — or a VP of Engineering handed you an AppSec mandate with no budget clarity, no team, and a backlog of features shipping daily. Where do you start?

This is more common than the industry likes to admit. Most mid-market companies (100-2000 employees) have been shipping software for years before they get serious about application security. The developers are good, the product is real, but the security foundations were never deliberately built.

The following 90-day roadmap is opinionated and realistic. It's built for someone who has to show progress quickly, doesn't have infinite budget, and is working with engineers who have other priorities. Perfect is the enemy of shipped — focus on foundations first.

Days 1–30

Phase 1: Understand What You Have

Before building anything, you need an honest picture of your current state. The instinct is to start scanning everything immediately — resist it. Scans without context produce noise. Context makes findings actionable.

Week 1: Asset Inventory

You cannot secure what you don't know about. Start here:

Document this in a spreadsheet. It doesn't need to be beautiful — it needs to exist.

Week 2: Developer Interviews

Talk to your engineers before you start testing. Specifically:

These conversations surface high-value targets faster than any automated tool. Developers know where the bodies are buried — they just haven't had anyone ask.

Weeks 3–4: First Scan Pass

Now run your first automated scan. This establishes a baseline — not a remediation list.

Use a DAST tool against your staging environment or production (with appropriate care). Configure it broadly — you want discovery, not depth, at this stage. Export the results and categorize findings by:

Don't try to fix everything yet. The goal is understanding the landscape. You'll use this data in Phase 2 to prioritize.

Deliverable for Phase 1: Asset inventory document, interview notes with top-risk areas highlighted, and a baseline vulnerability report. These three artifacts tell you where to focus next.

Days 31–60

Phase 2: Quick Wins and Foundations

With baseline data in hand, Phase 2 is about building the infrastructure for a sustainable AppSec program and knocking out the quick wins your baseline surfaced.

Set Up Automated Scanning

Your first baseline scan was manual. Now automate it:

This is the most important infrastructure you can build. Automated scanning running continuously is worth more than a manual pentest that runs once a year.

Remediate the Quick Wins

From your Phase 1 baseline, pick the 5–10 highest-severity findings that are genuinely fixable in a sprint. These should be:

Work with the engineering team to fix these. Ship them. This does two things: it reduces actual risk, and it builds credibility with engineering. The worst way to start an AppSec program is to dump 200 findings on a team and disappear.

Build a Triage Process

Security findings need to go somewhere. Build a minimal triage process:

  1. Finding in — scanner produces a finding
  2. Triage — verify it's real, assign severity, assign owner
  3. Ticket — create a tracked issue in Jira/Linear/GitHub Issues
  4. Fix — engineer resolves it
  5. Verify — re-scan confirms it's gone
  6. Close — ticket closed with resolution notes

This doesn't need custom tooling. A Jira project with five columns works. What matters is that every finding has an owner and a timeline.

Define Your SLAs

Establish and document remediation timelines. These are the industry norms:

Severity Remediation SLA Notes
Critical 24–48 hours Escalate immediately; may require hotfix
High 7–14 days Next sprint priority
Medium 30 days Backlog, regularly reviewed
Low 90 days or risk accepted Track, review quarterly

Document these in a policy (even a Google Doc counts). Auditors and enterprise customers will ask for it.

Deliverable for Phase 2: Automated scanning running on schedule, SCA in CI/CD, documented triage process, remediation SLAs, and 5–10 confirmed high-severity findings resolved.

Days 61–90

Phase 3: Depth, Coverage, and Metrics

By day 60, you have a real program. Phase 3 is about deepening coverage and making the program measurable — both for internal improvement and external stakeholder confidence.

Expand Scanning Coverage

Your initial DAST scan probably covered your main web application. Now expand:

Developer Security Training

AppSec at scale means shifting left — catching issues before they reach production. This requires developers who know what to look for.

You don't need a year-long training program. Start with a one-hour internal session on the OWASP Top 10 specific to your stack. Walk through a real finding from your scan results (anonymized or with dev's permission). Make it concrete, not theoretical.

Then add security to your code review checklist. Three items is enough to start:

Build Your Metrics Dashboard

To demonstrate program value and track improvement, measure:

Metric What It Tells You
Mean time to remediate (MTTR) by severity Are you hitting your SLAs?
Open Critical/High count over time Is the backlog shrinking or growing?
New findings per scan cycle Trending better or worse?
SCA findings introduced per PR Are devs introducing new vulnerable deps?
Coverage (% of apps scanned) Are you scanning everything you know about?

Start reporting these monthly to engineering leadership. Numbers create accountability in both directions — when they improve, it's a win worth celebrating.

Plan Your First Penetration Test

Automated scanning covers a lot, but it doesn't replace human judgment for complex business logic flaws, chained vulnerabilities, or creative attack paths. Plan an external penetration test for month 4 or 5 — once your automated scanning has cleared most of the low-hanging fruit.

Sending a clean-ish application to a pentester is more productive than sending one with 50 known unpatched vulnerabilities. They'll find more interesting things, and you'll get better ROI on the engagement.

Deliverable for Phase 3: Expanded scan coverage, developer security training done, metrics dashboard running, pentest scoped and scheduled.

What Most AppSec Programs Get Wrong

Starting with policy instead of practice

Writing a 40-page security policy before running a single scan is backwards. Policy follows practice — document what you're actually doing, not what you aspire to do. Real programs run scans first, then write the policy that reflects the process.

Treating security as a gate, not a partner

AppSec teams that only say "no" eventually get routed around. The most effective approach is becoming a resource — helping developers understand findings, providing fix guidance, and making it easy to do the secure thing.

Chasing 100% coverage immediately

You will not scan everything perfectly in the first 90 days. Pick your highest-risk surfaces and scan those well. A thorough scan of your five most critical applications beats a superficial scan of 50 services.

Ignoring developer context

Automated scanners produce findings without context. A finding that's Critical in CVSS might be Low risk in your specific deployment (e.g., a vulnerability in a feature no one uses, behind three authentication layers). Context from developers is essential for accurate risk prioritization.

Where You Should Be at Day 90

By the end of 90 days, a well-executed program should have:

This is not a complete AppSec program — that takes years to mature. But it's a real foundation. Every element above is something you can demonstrate to an auditor, a prospective customer, or a board asking "what are we doing about security?"

The goal at 90 days isn't perfection. It's a program that runs without your constant intervention, produces actionable findings, and gets better every sprint.

Ironimo provides the automated DAST layer for AppSec programs — Kali Linux-grade scanning on a schedule, with detailed findings reports you can hand to auditors. Built for teams building security programs without a 10-person AppSec team.

Start free scan
← Back to blog