Security & engineering

What SOC 2 readiness actually needs from engineering

Turn security commitments into controls the team can operate, demonstrate, and maintain as the product changes.

The enterprise customer sends a security questionnaire. Sales asks when you can provide a SOC 2 report. A compliance platform promises to organize the work. Engineering receives a long list of tasks and an expectation that normal delivery will continue unchanged.

This is a planning problem before it is a tooling problem. Engineering needs to understand the system being assessed, the commitments the company is making, and the controls it will have to operate repeatedly.

The aim should be a set of working practices that the team can explain and demonstrate. Collecting screenshots at the last moment is an expensive substitute for that foundation.

Agree on scope before building controls

SOC 2 work is grounded in the AICPA’s Trust Services Criteria, covering security, availability, processing integrity, confidentiality, and privacy. Which categories and controls apply to an engagement requires a scoped discussion with the appropriate assurance professionals. The AICPA’s criteria overview is a useful authoritative starting point.

For engineering, the first practical artifact is a clear description of the service. Identify the application, infrastructure, data stores, supporting tools, external providers, and people involved. Include the less visible paths: support access, background jobs, exports, maintenance scripts, and test environments containing customer data.

That description helps surface gaps between what the company says it does and how the system actually operates. Resolve those gaps deliberately. An overly broad promise in a questionnaire can become a recurring obligation nobody planned to deliver.

Map commitments to repeatable work

A control needs an owner, a frequency or trigger, a procedure, and evidence that the procedure happened. It also needs a path for exceptions.

Take access reviews. A policy might say access is reviewed periodically. The engineering work includes knowing which systems exist, obtaining reliable access lists, identifying the reviewer, recording the decision, and removing access that is no longer appropriate. The evidence should connect the review to those actions.

For onboarding and departures, trace the whole path. Removing someone from a central identity provider may not remove their API keys, repository access, customer support account, or local administrator credentials. Each path needs an owner and a tested procedure.

The details will vary by organization. The operating principle is consistent: describe a practice at the level where a team can carry it out without guessing.

Make production access explainable

Know who can reach production, how they authenticate, what privileges they receive, and how access is revoked. Separate routine administration from emergency access. Make exceptional access visible and reviewable.

In AWS, official IAM guidance recommends federation and temporary credentials for people, IAM roles for workloads, MFA, least privilege, and reviewing unused access. Those are useful engineering starting points, not a complete assessment of your environment. See AWS IAM security best practices.

Be careful with broad claims. “We use SSO” doesn’t establish that every production system uses it. “We enforce MFA” needs a defined population and evidence that enforcement covers it. Inventory and configuration checks are what make those statements defensible.

Treat software changes as an operating control

Engineering should be able to explain how a change moves from request to production. Who reviews it? Which checks run? Who can approve and deploy it? What happens when an urgent fix cannot follow the normal path?

The process should fit the team and its risks. It should also leave a coherent record. A pull request, linked issue, check results, approval, and deployment record can tell the story of a change. A policy claiming independent approval is unhelpful if repository permissions allow routine bypass without review.

Emergency changes need an explicit procedure rather than a quiet exception everyone knows about. Record why the emergency path was used and what review or follow-up is required. The existence of urgent work should be anticipated in the design.

Prove that recovery and response can work

Backups are only part of recovery. The team needs the right data, credentials, infrastructure, instructions, and people to restore a usable service. A restore exercise should record what was attempted, what succeeded, what failed, and which follow-up actions were assigned.

Monitoring needs the same practical treatment. Identify the events that matter, who receives alerts, and what that person is expected to do. A dashboard nobody checks provides limited operational protection. An incident procedure should include escalation, communication responsibilities, evidence handling, and a way to improve the system afterward.

Choose exercises that expose real dependencies. Losing a database and losing access to the cloud account are different problems. Discuss the scenarios that matter to your service and customer commitments, then plan exercises with appropriate safeguards.

Give vulnerability work a decision process

A scanner produces findings. The team still needs to assess exposure, assign responsibility, decide on remediation, and verify completion. Severity alone doesn’t explain whether a vulnerable component is reachable or how difficult a safe fix will be.

Track exceptions with an owner, rationale, compensating measures where appropriate, and a review date. A permanent backlog label is not a risk decision. Neither is automatically upgrading every dependency without checking whether critical workflows still work.

Build the recurring work into engineering capacity. Access reviews, dependency maintenance, recovery exercises, and evidence checks need time after the initial readiness project ends.

Start with a realistic engineering plan

The first plan should identify the service boundary, the largest control gaps, the people who own them, and the evidence the team can produce. Separate urgent security corrections from improvements that need a longer implementation window. Agree on expectations with your auditor or readiness provider before treating the task list as complete.

My role in Engineering & Security Readiness is to help translate those expectations into architecture, implementation priorities, and operating practices. An engineering review supports that work; it does not provide an audit opinion or guarantee an attestation outcome.

Have a decision like this in front of you?

Talk to Jonathan
All insights
A DIRECT CONVERSATION

Have a technology decision
you need to get right?

Tell me what’s happening. I’ll let you know whether I can help
and how I’d approach the next step.

Talk to Jonathan No sales team. You’ll talk directly with me.