Kiber təhlükəsizlik · 11 min read
What is DevSecOps and how to learn it?
DevSecOps means placing security not at the end of the software development process but at every stage of it — code, build, container, infrastructure and release. A DevSecOps engineer sets up automated checks in the CI/CD pipeline: code and dependency analysis, secret scanning, container image hardening, Kubernetes policies and infrastructure validation. This way, security becomes the job of the pipeline rather than of a separate department.
- DevSecOps is not a separate technology — it is the weaving of automated security checks into the DevOps flow.
- The core principle is shifting security left (shift left): finding the problem at the commit stage, not in the production environment.
- The role's daily work is not installing tools — it is triaging findings and reducing false positives.
- Learning sequence: Linux/Git/CI → code and dependency analysis → container → Kubernetes → IaC and cloud → final project.
- The strongest proof for a portfolio: a working pipeline with scanning stages and its audit report.
What is DevSecOps and how does it differ from DevOps?
DevOps is a workflow built so that software is written, built and released faster. DevSecOps adds control points to that flow: every change is automatically checked for vulnerabilities, leaked secrets and misconfiguration. Speed is not lost, because the checks run not manually but as the pipeline's own steps.
This approach is known as the shift-left principle. The logic is simple: fixing a mistake while the code is being written is far easier than fixing it in the production environment. NIST's Secure Software Development Framework (SSDF) and the OWASP DevSecOps guideline propose the same sequence — a separate check for each of the requirements, code, build and release stages.
| Stage | In DevOps | In DevSecOps |
|---|---|---|
| Plan and design | Features and the release date are planned | A threat model and security requirements are also written |
| Writing code | Code review looks at functionality | Static code analysis (SAST) and secret scanning are added to code review |
| Dependencies | It is enough that the package works | Dependency analysis (SCA) checks libraries for vulnerabilities and versions |
| Build and artifact | The image is built and pushed to the registry | The image is scanned, signed, and its provenance is recorded |
| Deploy | The success criterion is speed and stability | Admission control stops a workload that does not comply with policy |
| Runtime | Monitoring looks at performance and availability | Anomalies, configuration drift and privilege escalation are also monitored |
| Responsibility | Security is the job of a separate department | Security is the shared job of the pipeline and the team |
What does a DevSecOps engineer do day to day?
Most of the role is not installing new tools but making the existing pipeline understandable and tolerable. If a long list of warnings appears after every commit, the team stops looking at them within a week. That is why the main product of a DevSecOps engineer is the quality of the signal.
- Integrating static code analysis (SAST) and dependency analysis (SCA) steps into the CI/CD pipeline and optimizing their run time.
- Triaging incoming findings: which is a real risk, which is a false positive, which is left for the next sprint.
- Secrets management: cleaning keys and passwords out of the repository, moving them to a secret storage system, writing a rotation procedure.
- Minimizing container images, enforcing image signing and blocking an unsigned artifact from running in the registry.
- On the Kubernetes side, narrowing RBAC roles, writing network policies, testing admission control rules.
- Running Terraform code through checks: open ports, broad permissions, unencrypted disks.
- Talking with the developer team — delivering a finding not as a ban but as a concrete suggested fix.
At which stages of the CI/CD pipeline is security checked?
- Writing code: simple rules run in the developer's environment — dangerous functions and hardcoded values become visible immediately.
- Commit and pull request: secret scanning and fast SAST rules run; if a key ends up in the repository, the merge is blocked.
- Build: the dependency tree is checked with a full SAST scan and SCA, and library versions with known vulnerabilities are flagged.
- Container: the image is built on a minimal base, scanned, signed, and provenance information is stored together with the artifact.
- Before deploy: infrastructure-as-code (IaC) files — the Terraform plan — are evaluated against policy rules.
- Inside the cluster: admission control rejects a manifest that does not comply with policy, and RBAC and network policies narrow the scope.
- Runtime: behavior monitoring and configuration drift detection reveal manual changes and anomalous activity.
| Stage | Check that runs | What it prevents |
|---|---|---|
| Commit / PR | secret scanning, fast SAST | Keys, tokens and passwords ending up in the repository |
| Build | full SAST, SCA | Vulnerable library versions and known code patterns |
| Container | image scanning, minimal base, image signing | Bloated images, unnecessary packages, forged artifacts |
| Before deploy | Terraform and policy checks | Open storage, broad permissions, unencrypted resources |
| Cluster | RBAC, network policies, admission control | Root containers, uncontrolled internal traffic |
| Runtime | monitoring, configuration drift detection | Hidden manual changes and privilege escalation |
What knowledge do you need beforehand to learn DevSecOps?
DevSecOps is an intermediate-level track. This means you must understand the system itself before you learn security. Without knowing what works and how, it is impossible to read a scan result — the text that appears on the screen remains just a red line to you.
- Linux: file permissions, processes, services, reading logs, package management.
- Networking basics: ports, DNS, TLS, proxy logic, the difference between internal and external traffic.
- Git: branch, pull request, merging, removing a file from history.
- One scripting language: Bash is a must, and Python is very useful for automation.
- Container logic: what an image is, what a layer is, how a container differs from the host.
- The ability to read YAML and configuration — this is the language of the pipeline.
If you have no IT experience at all, going straight into DevSecOps is a waste of time. Building a foundation first through Linux administration or the defensive team (Blue Team) track gives faster results.
How do you learn DevSecOps — what should a step-by-step roadmap look like?
- Foundation: Linux, Git and CI basics. Learn the anatomy of a pipeline — stages, artifacts, environment separation. Outcome: you should set up a simple CI job yourself.
- Code and dependency analysis. Add SAST, SCA and secret scanning to the same pipeline. Outcome: you should be able to sort findings by severity and suppress false positives.
- Container security. Image minimization, signing, runtime policies. Outcome: build two images of the same application and compare the size and the number of vulnerabilities.
- Kubernetes. RBAC, network policies, admission control and handling of sensitive data. Outcome: a small cluster with the principle of least privilege applied to every pod.
- IaC and cloud configuration. Terraform checks, configuration drift, narrowing permissions. Outcome: at least three misconfigurations stopped at the plan stage.
- Final project. Build a secure pipeline from scratch and then audit it — what you found, what you fixed, what remains.
- At each stage one working artifact must remain: a repository, a configuration file, a report.
- Do not mix up the stages — moving to Kubernetes without knowing container logic is the most common mistake.
- At the end of each module, write a short note: what you are blocking, why, and with what exception.
Which tools do you learn to work with in DevSecOps?
| Category | What it checks | Place in the pipeline |
|---|---|---|
| SAST | Risky patterns in source code | Commit and build |
| SCA | Vulnerabilities in third-party libraries | Build |
| Secret scanning | Leaks of keys, tokens, passwords | Commit and history |
| Image scanning | Package vulnerabilities in the base image | Container build |
| Image signing and provenance | Authenticity of the artifact | Push to the registry |
| Kubernetes policies | RBAC, network policies, admission control | Cluster |
| IaC checking | Errors in Terraform configuration | Before deploy |
| Runtime monitoring | Anomalous behavior and configuration drift | Production environment |
Tool names change from year to year, while the categories remain. That is why the right measure of learning is not "how many tools do I know" but the question "can I read the output of this category". Someone who understands one SCA tool in depth moves to a second in a day.
How is DevSecOps practiced in the lab?
How we do it in our lab
Here is how we do it in our lab: the DevSecOps program lasts six months and consists of six modules. M01 covers Linux, Git and CI basics — the anatomy of a pipeline and environment separation are set up. M02 covers code and dependency analysis: SAST, SCA, secret scanning and triaging the results. M03 is devoted to container security, M04 to RBAC, network policies and admission control in Kubernetes, and M05 to Terraform checks and the principle of least privilege. In M06, each participant builds a secure pipeline from scratch and audits it. The acceptance criterion of the final project is measurable: the pipeline must block at no fewer than three stages, and the exception for each blocking rule must be documented. Groups are 8–12 people, and classes are held in offline and online formats. The lab works with Kubernetes, Terraform and Git.
- Each module ends with one working environment — not slides, but a configuration and a report.
- The small-group format allows findings to be triaged together: three people interpret the same scan result in three ways, and the differences are discussed.
- The audit of the final project is carried out across participants — this also prepares the ability to explain in an interview.
- New groups start every month; at the end of the program, a Log Academy certificate is issued and preparation for international certifications is provided.
Which DevSecOps project can you build for a portfolio?
- A pipeline with scanning stages: for a small application, build a commit → SAST → SCA → image scan → deploy chain and document the blocking rule of each stage.
- A minimal image project: build the same application on a standard and on a minimal base image, and tabulate the difference in the number of vulnerabilities and in size.
- A Kubernetes policy set: write RBAC roles, network policies and admission control rules for one namespace, then test a prohibited manifest.
- A Terraform checking project: write infrastructure with a deliberately wrong configuration and set up rules that stop it at the plan stage.
- A secrets management example: remove a secret from the repository, move it to a secret storage system, write a rotation procedure.
- Keep the project in a separate repository and state its purpose in one paragraph in the README.
- Add a "Before / after" section: what was not blocked, and what is blocked now.
- Write down the reason for every decision — why this rule is critical, why another stayed at warning level.
- Show how you handle false positives; this is what is asked about most in interviews.
- At the end, acknowledge the limitations: what was not tested, what the next step is.
Who is DevSecOps suited for, and who is it still too early for?
This track is designed for the intermediate level, and the minimum age for participation is 18. The easiest transition is for people who already write code or manage infrastructure, because they have already seen the pipeline from the inside.
| Profile | Readiness level | Recommendation |
|---|---|---|
| Developer | Has code and Git, weak on infrastructure | Can start directly; should set aside extra time for Linux and containers |
| DevOps / SRE engineer | Has pipeline and cluster experience | The fastest transition; attention shifts to security logic |
| System / network administrator | Strong in Linux, weak in CI/CD | First strengthen the basics of Git and CI |
| Defensive team analyst | Has security, lacks automation | Needs preparation in scripting and containers |
| Beginner with no IT experience | No foundation | First Linux administration or the defensive team track |
What mistakes are most often made when learning DevSecOps?
- Tool collecting: installing ten tools and reading the output of none. Understanding one category in depth is more valuable.
- Treating every finding as "critical". A list without priorities turns the team off the checks completely.
- Not managing false positives. Writing an exception rule and documenting it is part of the job, not an escape route.
- Keeping secrets in the repository. A key that has not been removed from the history is still considered leaked.
- Checking security only after deploy — this is not DevSecOps, it is ordinary audit practice.
- Not protecting the pipeline itself: CI tokens with broad permissions and uncontrolled third-party steps are a real attack surface.
- Not talking to the developer. A rule that is not accepted is switched off a week later.
These mistakes share one root: seeing security as a barrier built against the team. The model that works is the opposite — a check becomes sustainable when it saves the developer's time.
A quick check
One question to tell whether you are ready: if a secret leaked in your current project, how many minutes would it take you to find and rotate it? If the answer is unclear, your starting point is secrets management.
- Is DevSecOps a continuation of DevOps or a separate field?
- It is a continuation. DevSecOps is not a separate set of technologies — it is the addition of automated security checks and policies to the existing DevOps flow. That is why it is hard to learn DevSecOps without knowing DevOps.
- Is programming knowledge required to learn DevSecOps?
- At the application developer level, writing code is not required, but reading code is necessary. Bash is a must, and Python gives a serious advantage for automation and for processing scan results.
- How long does it take to learn DevSecOps from scratch?
- For someone with a Linux, Git and CI foundation, a structured program takes six months — our DevSecOps program is built for this duration too. Someone without a foundation must first set aside extra time for Linux.
- Which certifications are useful for becoming a DevSecOps engineer?
- Certifications in container and Kubernetes security, cloud platforms and secure software development strengthen your portfolio. Besides the Log Academy certificate, our program also covers preparation for international certifications.
- What is the difference between DevSecOps and a cybersecurity specialist?
- A classic cybersecurity specialist detects and investigates incidents. A DevSecOps engineer, on the other hand, builds controls into the pipeline so that the problem never reaches the production environment at all.
- Can you start learning DevSecOps with Kubernetes?
- It is not recommended. Kubernetes is built on container, network and permission models; without this foundation, RBAC and network policies turn into merely copied YAML.
- What lab environment for DevSecOps can you build at home?
- Linux on one virtual machine, a local Git server or a free CI, a lightweight Kubernetes distribution and Terraform are enough. This set lets you practice all stages of the pipeline.
- Is it possible to move straight into DevSecOps without DevOps experience?
- It is possible if you know Linux, Git and container logic. Formal DevOps work experience is not required, but you need to see in practice how a pipeline works.