Home
Cybersecurity & AI Security / Part 49 — Working with Developers

Working with Developers

CAP, ACID vs BASE, latency numbers, back-of-envelope estimation, single points of failure — the vocabulary every system designer thinks in.


Core Philosophy: Every technical practice in Track B — secure coding standards, code review, automated testing, threat modeling — succeeds or fails on one thing: whether developers actually adopt it. An Application Security engineer who is technically brilliant but cannot work effectively with developers will fail; one with solid skills and excellent collaboration will succeed. AppSec is, at its core, a people discipline wearing technical clothing. This final page of Track B is the human skill that makes all the rest work.

Part 1: The Problem

Look back across Track B. Secure development lifecycle (5B.1) — done by developers. Secure code (5B.1) — written by developers. Code review findings (5B.2) — fixed by developers. Automated testing findings (5B.3) — acted on by developers. Threat modeling (5B.4) — a collaborative session with developers.

The pattern is unmistakable: every single thing in Application Security ultimately depends on developers. The AppSec engineer does not, and cannot, secure the software alone (the 5B.1 principle). They succeed through developers — by making developers able and willing to build securely.

This means a hard truth: the AppSec engineer’s effectiveness is limited not by their technical skill but by their ability to work with developers. A brilliant AppSec engineer whom developers experience as an obstacle — a gatekeeper, a source of friction, a critic — will be routed around, ignored, and ultimately ineffective. The same skills, delivered by someone developers experience as a helpful ally, transform an organization. This page is that ability — and it is the page that determines whether all the others actually matter.

Part 2: The Concept — Why the Relationship Is Hard (and How to Reframe It)

It helps to honestly understand why the AppSec/developer relationship can be difficult — and then to reframe it correctly.

Why friction arises:

The reframe — the single most important mental shift in this page:

text
   ❌ WRONG framing:  AppSec vs Developers
      security as gatekeeper, blocker, critic, adversary
      → developers route around security; AppSec fails

   ✅ RIGHT framing:  AppSec WITH Developers, same side
      AppSec as enabler, ally, resource, teammate —
      everyone shares the goal of good software
      → developers engage with security; AppSec succeeds

The AppSec engineer and the developers are on the same team, with a shared goal: good software. Insecure software is not good software — so security is not opposed to the developers’ goal, it is part of it. The AppSec engineer’s job is not to impose security on developers; it is to help developers achieve something they also want — software that is not just functional but sound. Everything else in this page flows from getting this framing right.

Part 3: The Concept — Communicating Findings Well

A great deal of AppSec/developer interaction is the AppSec engineer bringing findings to developers — from code review (5B.2), automated tools (5B.3), threat modeling (5B.4), assessments. How those findings are communicated very largely determines whether they get fixed and whether the relationship stays healthy.

Principles for communicating findings well:

Frame it as the work, not the person. A finding is about the code and the system — never about the developer’s competence. “This query is built in a way that allows injection” — about the code. Tone and framing make the difference between a developer who engages and one who gets defensive.

Make findings genuinely actionable (the 2.11 / 5A.4 reporting discipline). A developer should receive: clearly what the issue is, where it is, why it matters (the real impact — 1.1), and how to fix it. A finding without a clear path to a fix is a burden; a finding with one is help.

Explain the “why.” Developers fix things better, and learn, when they understand why something is a vulnerability — not just “the tool flagged it.” Explaining the real risk turns a finding into education, and a developer who understands the why will avoid the whole class of issue next time.

Prioritize honestly. Do not present every finding as a five-alarm fire. Use real risk (likelihood × impact, 1.1) — be clear about what genuinely matters urgently and what is lower priority. Developers trust an AppSec engineer who prioritizes honestly; they tune out one who treats everything as critical (the same false-positive-fatigue problem from 5B.3, applied to human communication).

Be a resource, not just a reporter. The best AppSec engineers do not only deliver findings — they help fix them. Being available to discuss, to pair on a fix, to answer questions, positions security as help rather than homework.

Acknowledge constraints. Developers work under real constraints — deadlines, legacy code, competing priorities. An AppSec engineer who acknowledges those constraints and works within them, helping find practical paths forward, earns far more cooperation than one who issues demands divorced from reality.

Part 4: The Concept — Enabling Developers, Not Just Checking Them

The deepest shift in effective AppSec work: moving from checking developers’ work to enabling developers to do secure work themselves. This is the 5B.1 principle — secure development as the whole organization’s property — made personal.

A purely checking-based AppSec model (review everything, test everything, find and report all the bugs) does not scale and does not improve the organization — the AppSec engineer becomes a bottleneck, and developers stay dependent. An enabling model multiplies the AppSec engineer’s effect by raising the whole development organization’s security capability.

What enabling looks like in practice:

The shift from checker to enabler is what turns an AppSec engineer from a bottleneck into a multiplier.

Part 5: The Concept — Influence Without Authority, and Handling Disagreement

An AppSec engineer usually does not have authority over developers — they cannot simply order secure development. Their effectiveness comes from influence: trust, credibility, relationships, and the ability to persuade. Two practical aspects.

Building credibility and influence:

Handling disagreement and risk decisions: Sometimes a developer or team will disagree — about whether something is a real issue, about priority, about whether to fix something now. Handle this well:

Part 6: The Concept — The Human Core of AppSec, and Track B Complete

This final page closes Track B by naming what it has been building toward.

Application Security is a people discipline. Yes, it is deeply technical — it requires everything in Phases 1–4 and all of Track B’s technical pages. But its effectiveness is fundamentally about people: about making a development organization want to and be able to build secure software. The technical knowledge is necessary; the ability to work with developers is what converts that knowledge into actual security. An AppSec engineer is, in the end, a change agent — someone who improves how an organization builds software, which is a fundamentally human and organizational task.

This is good news for a developer switching in. The two things that make an AppSec engineer effective are deep understanding of how software is built, and the ability to work well with developers. As a developer:

Your background is not just a technical asset for AppSec (5B.1, Part 6) — it is a relational asset. You are positioned to be the kind of AppSec engineer developers see as “one of us, helping us” rather than “an outsider judging us.” That is the most effective kind there is.

🔑 The deep lesson — and the close of Track B: Application Security is a people discipline. Every technical practice in this track — secure coding, code review, automated testing, threat modeling — only produces real security if developers adopt it, and that depends on the AppSec engineer working with developers, not against them: same team, shared goal, communicating findings as help not criticism, enabling developers rather than just checking them, and earning influence through credibility and helpfulness. Get the technical knowledge from the whole curriculum; get the collaboration right from this page; and a developer-turned-AppSec-engineer becomes exactly what the field most needs — someone who makes the people building software build it securely.

📓 Key Terms

Term Plain meaning
Working with developersThe collaborative people-skill at the core of effective AppSec.
Gatekeeper trapThe failure mode where security is experienced as a blocker/adversary.
Actionable findingA finding with clear what / where / why / how-to-fix.
Enabling (vs checking)Raising developers’ own security capability, vs only inspecting their work.
Security championA security-aware developer within a team, extending security capability.
Influence without authorityAchieving security outcomes through trust and persuasion, not orders.
Informed risk decisionAn organization consciously deciding on a risk, with the risk clearly understood.

🧪 Hands-On Lab

This page’s labs are about communication, framing, and reflection — practiced in writing and, where possible, in real interaction.

Task 1 — Rewrite a finding two ways. Take a real vulnerability finding (from a Track B lab). Write it up two ways: once in a blaming, jargon-heavy, everything-is-critical style; once framed as same-team help — clear, actionable, honestly prioritized, with the “why” explained. Compare. This is the core communication skill.

Task 2 — Write actionable findings. Take three findings from your 5B.2 code-review lab. For each, write a developer-facing finding with clear what / where / why-it-matters / how-to-fix. Practice making findings help, not homework.

Task 3 — Reflect from the developer’s side. You have been a developer. Write an honest reflection: when you received feedback or criticism on your code, what made it land well vs badly? What would have made a security finding feel like help rather than judgment? Use your own experience as a guide to how to treat developers.

Task 4 — Design an enabling approach. For an imagined development team, write how you would shift from checking to enabling: what education, what guidance/standards, what tooling integration, how you would be approachable, how you would make the secure path the easy path. This is the Part 4 lesson made concrete.

Task 5 — Work through a disagreement. Write out a scenario: a developer disagrees that a finding needs fixing now. Script how you would handle it well — engaging genuinely, making the risk clear, respecting the decision process, staying professional. Then script how to handle it badly, and note the difference.

Task 6 — Plan your influence. Write how you would build credibility and influence as a new AppSec engineer on a team with no authority over developers — using competence, consistency, honesty, helpfulness, and small wins.

Task 7 — Write a working-with-developers note. In Notion, create a “Working With Developers” page — the same-team reframe, communicating findings well, enabling vs checking, influence without authority, handling disagreement. The reference for the human core of AppSec.

Task 8 — Reflect on the fit. Close Track B with an honest reflection: given Track B as a whole, is Application Security a direction you want to pursue? How do your developer background and your own experience position you for it? This feeds your Phase 7 career thinking.

⚠️ Common Mistakes

✅ Recap & What’s Next

Track B complete. You can now operate as an Application Security engineer — weaving security into the Secure Development Lifecycle and “shifting left” (5B.1), reviewing code for vulnerabilities (5B.2), building security testing automation into pipelines (5B.3), running threat modeling as a practice (5B.4), and — the human core that makes it all work — collaborating effectively with developers (5B.5). This is the employment path that builds most directly on what you already are: a developer.

Where to go from here:

You may do the other tracks now or return to them later — the skills compound.

📋 Phase 5, Track B — Page Checklist

Tick each page when its reading and its hands-on lab are done.

Keep growing your living pages:

🔑 The Track B throughline: Application Security weaves security into every stage of how software is built (“shift left”); it applies everything from Phases 1–4 as a professional practice; and it succeeds only by making secure development the whole organization’s property — which is, in the end, a people discipline. It is the security specialization that builds most directly on being a developer.
⁂ Back to all modules