<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: yuan</title>
    <description>The latest articles on DEV Community by yuan (@yinthisgame).</description>
    <link>https://dev.to/yinthisgame</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4063192%2F0002eadb-7ab8-4275-8809-5154dae80a47.jpg</url>
      <title>DEV Community: yuan</title>
      <link>https://dev.to/yinthisgame</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/yinthisgame"/>
    <language>en</language>
    <item>
      <title>Solo founders need a SOC 2. Here's how.</title>
      <dc:creator>yuan</dc:creator>
      <pubDate>Tue, 04 Aug 2026 22:59:56 +0000</pubDate>
      <link>https://dev.to/yinthisgame/solo-founders-need-a-soc-2-heres-how-222f</link>
      <guid>https://dev.to/yinthisgame/solo-founders-need-a-soc-2-heres-how-222f</guid>
      <description>&lt;p&gt;A one-person company ships like a 20-person team now. That is the whole reason this problem exists. You are selling to companies big enough to have a procurement process, at a headcount that used to mean you were never in the room. So the questionnaire arrives, there is a SOC 2 line in it, and every control you read about assumes a team you do not have.&lt;/p&gt;

&lt;p&gt;Five years at Deloitte auditing SOC 2 for tech companies across the US and Canada. 30+ of them, for names like LinkedIn, Affirm and Ripple.&lt;/p&gt;

&lt;p&gt;In all that fieldwork I never once saw "too few people" written down as an audit failure. What I saw was auditors who never learned to translate big-company control language down to a small company, so they either invented busywork or wrote up a finding that did not need to exist.&lt;/p&gt;

&lt;p&gt;So here is the useful version of the question. Not "can I pass" but "what does the auditor actually open when the company is one person and an agent."&lt;/p&gt;

&lt;h2&gt;
  
  
  Change management: I open your branch protection settings
&lt;/h2&gt;

&lt;p&gt;The control everyone assumes they fail. Big-company guidance says a second engineer reviews every change before it ships. You merge your own code.&lt;/p&gt;

&lt;p&gt;Except that is not quite what happens anymore. Your agent writes the change and you review it. It is worth being honest about what that does and does not buy you. It does not create separation of duties, because the agent runs under your direction and your credentials, so an auditor reads you and the agent as one principal. What it does buy you is a real review that leaves a record, which is more than a solo developer merging their own hand-written code ever had.&lt;/p&gt;

&lt;p&gt;What I look at is whether the path from commit to production is constrained and recorded. Branch protection on the default branch. Required status checks that have to go green. Tests that run on their own. A deploy history showing what shipped and when, that nobody typed by hand.&lt;/p&gt;

&lt;p&gt;An automated control can stand in for a second reviewer when it is designed well and it leaves records. That is not a loophole, it is a compensating control, and it holds up in the working papers as long as the safeguard is real and the trail exists.&lt;/p&gt;

&lt;p&gt;One thing to check today: if your agent has push access to the repo, whether it can reach the default branch matters more than whether you read its output. Most people have never looked.&lt;/p&gt;

&lt;h2&gt;
  
  
  Separation of duties: I look for what catches you afterward
&lt;/h2&gt;

&lt;p&gt;You cannot split the role, and adding an agent does not split it either. So the question moves to what catches a bad change after it happens.&lt;/p&gt;

&lt;p&gt;This got more important, not less. An agent executes a lot of changes quickly, and the blast radius of one bad instruction is wider than it was when a human typed every command. The controls that matter are the ones that fire without you.&lt;/p&gt;

&lt;p&gt;Deploy notifications posted somewhere that keeps history. Cloud audit logs on and retained. Alerts on the things that would actually hurt: a new IAM principal, a security group opened to the world, a production database touched outside a deploy. And a self-review you perform on a schedule and write down.&lt;/p&gt;

&lt;p&gt;The criterion is about reducing risk. It is not about counting heads. One person reviewing one account is a valid review when it is written down and dated.&lt;/p&gt;

&lt;h2&gt;
  
  
  Access review: the one artifact nobody has
&lt;/h2&gt;

&lt;p&gt;You are the only admin. Except you are not, and this is the part that has quietly changed.&lt;/p&gt;

&lt;p&gt;Your agent has credentials. Your MCP servers hold tokens. Your CI has a deploy key. Every one of those is a principal with standing access to your systems, and almost nobody has ever reviewed them, because they arrived one at a time while you were shipping. Non-human identities are the access review of the moment and most solo setups have more of them than people.&lt;/p&gt;

&lt;p&gt;The control is a written review, performed by you, on a schedule, that names what exists and confirms it should. List the accounts with production access. List the tokens your agent and your CI hold, and what each one can reach. List the SaaS tools holding customer data. Confirm each still needs what it has. Date it. Save it.&lt;/p&gt;

&lt;p&gt;It feels absurd to write a memo to yourself. Write it anyway. Fifteen minutes a quarter, and it is the difference between a control that exists and a control you believe in.&lt;/p&gt;

&lt;p&gt;SSO with MFA everywhere it is offered, and a hardware key or a password manager. Those are the controls. The review is the evidence they are working.&lt;/p&gt;

&lt;h2&gt;
  
  
  Vendors: you collect reports, you do not run a program
&lt;/h2&gt;

&lt;p&gt;Big-company guidance assumes a procurement team with a vendor risk program and annual reassessments. You have a cloud provider, a dozen SaaS tools, and now a model provider.&lt;/p&gt;

&lt;p&gt;That last one is new and founders miss it. If customer data reaches your model provider, it is a vendor in your scope like any other. Collect its report the same way you collect your cloud provider's.&lt;/p&gt;

&lt;p&gt;The work is reading, not building. Your cloud provider is what auditors call a subservice organization, meaning part of your security genuinely lives inside their system. You collect their SOC 2 report. You do not audit AWS. Keep a short list of vendors that touch customer data, note which parts of your security depend on each, and hold their current reports.&lt;/p&gt;

&lt;h2&gt;
  
  
  Background checks: a population of zero is still a population
&lt;/h2&gt;

&lt;p&gt;No employees means nothing to check. That is not a gap, it is an empty population, and it gets recorded as one.&lt;/p&gt;

&lt;p&gt;An agent is not an employee and does not get a background check. It gets access, so it lands in the access control, not the HR one. Keep those straight and the HR section of your audit takes about ten minutes.&lt;/p&gt;

&lt;p&gt;The distinction starts mattering when you bring on your first contractor. Then the control becomes a signed agreement plus the steps you follow to grant access and remove it when the work ends. Write those steps down before you need them, because doing it afterward is how a small thing turns into a finding.&lt;/p&gt;

&lt;h2&gt;
  
  
  The part that actually trips people up
&lt;/h2&gt;

&lt;p&gt;It is almost never the controls. Solo founders on modern infrastructure usually have better security than they think, because the defaults improved and there is no legacy sprawl.&lt;/p&gt;

&lt;p&gt;It is the evidence. A screenshot someone took three weeks ago is a picture of a moment that has passed. Configuration pulled from the live system is what the control state actually is. The gap between those two is where the pain in a first audit lives.&lt;/p&gt;

&lt;p&gt;Here is the good news, and it is the same reason you ship like a 20-person team. Chasing evidence was miserable because a person doing it is rate limited by attention. Your agent is not. It already has access to your cloud, your identity provider and your repo, and it can pull current state instead of photographing it. The work that used to eat a month of engineering time is the work agents are best at.&lt;/p&gt;

&lt;p&gt;The catch is that an agent left alone will hand you something that looks like evidence and falls apart on inspection. A policy nobody follows. A config that does not prove what the control claims. A log covering the wrong window. It has to know what counts, which is a different problem from having access.&lt;/p&gt;

&lt;p&gt;If you change one habit: stop thinking in screenshots and start thinking in exports.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start with Type I
&lt;/h2&gt;

&lt;p&gt;Type I tests whether your controls are designed correctly at a point in time. Type II tests whether they actually operated over a stretch of time, usually three to twelve months.&lt;/p&gt;

&lt;p&gt;Get Type I first. The scope is small, there is no observation window to wait out, and it gives you something to hand the prospect now. Most enterprise buyers accept a Type I with a Type II to follow. Get the design right, then prove it held.&lt;/p&gt;

&lt;h2&gt;
  
  
  What to turn on this week
&lt;/h2&gt;

&lt;p&gt;If you do nothing else:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Branch protection on the default branch, with required checks and force-push disabled&lt;/li&gt;
&lt;li&gt;An inventory of every token your agent, your MCP servers and your CI hold, and what each can reach&lt;/li&gt;
&lt;li&gt;MFA on every account that offers it, SSO where you can&lt;/li&gt;
&lt;li&gt;Cloud audit logging on, retained past the period you will be audited over&lt;/li&gt;
&lt;li&gt;Deploy notifications going somewhere that keeps history&lt;/li&gt;
&lt;li&gt;A dated access review, written by you, covering humans and non-humans both&lt;/li&gt;
&lt;li&gt;Current SOC 2 reports from the vendors your security depends on, model provider included&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That is most of a Security-only scope for a one-person company. Security is the only required category. The other four are optional and you add them only when a contract genuinely needs them.&lt;/p&gt;




&lt;p&gt;The longer version of the standards reasoning, including how the AICPA treats smaller organizations and where the right-sizing is actually permitted: &lt;a href="https://chiarohq.com/soc-2/solo-founder" rel="noopener noreferrer"&gt;Can a solo founder pass SOC 2?&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The methodology I test against is public, control by control, if you want to see what the questions actually are: &lt;a href="https://github.com/Chiaro-HQ/methodology" rel="noopener noreferrer"&gt;github.com/Chiaro-HQ/methodology&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sources&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Trust Services Criteria are evaluated at the criterion level. Points of focus are illustrative guidance, not requirements (2017 TSC with revised points of focus, 2022).&lt;/li&gt;
&lt;li&gt;AICPA guidance allows smaller, less complex organizations to meet the criteria through active owner oversight rather than formal structure.&lt;/li&gt;
&lt;li&gt;Under AT-C 205, inquiry alone is never sufficient. The practitioner has to inspect, observe or reperform.&lt;/li&gt;
&lt;li&gt;Solo founders started 36.3% of new startups in the first half of 2025, up from 23.7% in 2019. About 82% of US businesses have no employees.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>security</category>
      <category>startup</category>
      <category>devops</category>
      <category>ai</category>
    </item>
  </channel>
</rss>
