Cert
SDFISACAFoundational

Cert

The Software Development Fundamentals Certificate covers the foundational concepts of how software is built: programming concepts, version control, the SDLC, testing, DevOps and CI/CD, secure coding, and how to read and discuss code at a conceptual level — without requiring practical coding experience.

120
Minutes
60
Questions
65/100
Passing Score

Who Should Take This

Auditors, project managers, business analysts, and IT staff who interact with developers and need a working vocabulary of software engineering. Assumes basic computing literacy. Learners finish able to participate in design and code review discussions and recognize common software development practices.

Course Outline

1Programming Concepts
3 topics

Variables and Control Flow

  • Identify the core programming concepts: variables, types, expressions, statements, scope.
  • Identify control-flow constructs: conditionals (if/else), loops (for/while), and identify their typical use.

Functions and Modularity

  • Identify functions/methods as named, parameterized, reusable units and identify their typical signature: name, parameters, return type, body.
  • Identify the value of modularity: smaller code units, easier testing, lower coupling.
  • Apply readability evaluation: pick a 50-line function and identify three concrete improvements (renaming, extraction, early-return).

Data Structures and OOP

  • Identify common data structures: array/list, hash map/dictionary, set, tree, graph, queue/stack.
  • Identify OOP concepts: class, object, inheritance, encapsulation, polymorphism — at conceptual depth.
2Source Control and Collaboration
3 topics

Git Fundamentals

  • Identify Git as the dominant DVCS and identify the basic operations: init, clone, commit, push, pull, fetch, branch, merge.
  • Identify the difference between local repository, remote, working tree, staging area, and commit history.

Branching and Merging

  • Identify common branching patterns: trunk-based development, GitFlow, feature branches, clarifying how each appears in real-world scenarios.
  • Apply pull-request workflow: create branch → commit → push → open PR → address review → merge.
  • Analyze a 'merge hell' scenario where long-lived branches diverged and propose preventive practices (small PRs, frequent rebase, feature flags).

Code Review

  • Identify the goals of code review: defect detection, knowledge sharing, design improvement, junior mentorship.
  • Apply code-review etiquette: ask questions rather than dictate, focus on the code not the author, separate must-fix from nice-to-have.
3SDLC and Methodologies
3 topics

Waterfall vs Agile

  • Distinguish waterfall (sequential phases) from agile (iterative) methodologies and identify a use case for each.
  • Identify the Agile Manifesto values and identify common misinterpretations (e.g., 'no documentation', 'no plan').

Scrum

  • Identify Scrum roles (Product Owner, Scrum Master, Developers) and Scrum events (Sprint, Daily Scrum, Review, Retrospective).
  • Identify Scrum artifacts (Product Backlog, Sprint Backlog, Increment) and identify the role of each.

Kanban and DevOps

  • Identify Kanban as a flow-based methodology emphasizing WIP limits and visualizing work.
  • Identify DevOps as the cultural and technical movement bridging development and operations through automation, shared responsibility, and feedback.
  • Apply method selection: identify when Scrum, Kanban, or hybrid suits a team's nature of work (planned product vs reactive ops).
4Testing and Quality
3 topics

Test Levels

  • Identify the test pyramid: unit (many, fast, isolated), integration (some, broader scope), end-to-end (few, slow, full system).
  • Identify the trade-offs of an inverted pyramid (too many slow E2E tests) and the resulting flakiness and feedback latency.

Test-Driven Development

  • Identify TDD as the red-green-refactor loop and identify its claimed benefits (design pressure, regression coverage, debuggability).
  • Apply TDD critique: identify situations where TDD is high-value (greenfield logic) and where it adds friction (UI, glue code).

Code Quality Practices

  • Identify static analysis (linters, type checkers), code coverage, mutation testing, and code review as complementary quality gates.
  • Apply quality-gate selection for a small team: which gates to enforce in CI vs as advisory checks.
5DevOps and Deployment
3 topics

CI/CD

  • Identify CI (continuous integration) as the practice of merging frequently to a shared branch with automated build/test, and CD (continuous delivery/deployment) as the automated path to production.
  • Identify common CI/CD platforms: GitHub Actions, GitLab CI, CircleCI, Jenkins, Buildkite.
  • Apply pipeline design for a small web service: lint + unit test on every commit, integration test + image build on PR merge, staged deploy on tag.

Deployment Strategies

  • Identify deployment strategies: blue/green, canary, rolling, feature-flagged, clarifying how each appears in real-world scenarios.
  • Analyze a 'big bang deploy' scenario and identify the risks vs canary or feature-flagged alternatives.

Observability

  • Identify the three pillars of observability: logs, metrics, traces — and identify what each tells you.
  • Apply observability for a 'why is the API slow?' incident: traces to find the slow path, metrics to identify scope, logs to find the specific error.
6Architecture and Secure Coding
3 topics

Architecture Patterns

  • Distinguish monolith, microservices, event-driven, and serverless architectures and identify the trade-offs of each.
  • Identify the value of starting with a monolith and migrating to microservices only when the cost of monolith complexity exceeds the cost of distributed systems.

Secure Coding

  • Identify the OWASP Top 10 categories and identify the most-common ones in code review (broken access control, injection, security misconfiguration).
  • Apply input validation patterns, parameterized queries, and output encoding as canonical defenses against the most common application vulnerabilities.
  • Analyze a code review scenario containing SQL injection, XSS, and missing authorization checks and propose minimal correct fixes for each.

Documentation and Maintenance

  • Identify the role of READMEs, ADRs (Architecture Decision Records), inline docstrings, and API specs in long-lived codebases.
  • Apply documentation-tier selection: when an inline comment suffices, when a README change is required, when an ADR is warranted.
7Practical SDLC and Career
8 topics

Project Estimation

  • Identify common estimation techniques: t-shirt sizes, Fibonacci story points, three-point (PERT) estimates, comparison-based.
  • Apply estimation under uncertainty: distinguish 'we don't know enough' from 'we know but it's complex' and apply different techniques to each.
  • Analyze a chronically-underestimating team and propose causes (optimism bias, missing scope, poor reference data) and remediations.

Technical Debt

  • Define technical debt and identify the four debt categories (Martin Fowler's quadrant): deliberate vs inadvertent crossed with prudent vs reckless.
  • Apply tech-debt prioritization: address debt that compounds (broken testing, slow CI, brittle modules) before debt that doesn't (cosmetic).

Working with AI Tooling

  • Identify modern AI development tools: GitHub Copilot, Cursor, Claude Code, code-completion vs agent-driven workflows.
  • Apply effective AI-assisted coding patterns: review every diff, run tests, never paste secrets into prompts, treat agent suggestions as proposals not decisions.
  • Analyze the risks of unreviewed AI-generated code: hallucinated APIs, vulnerable patterns, hidden license issues, knowledge atrophy.

Open Source Engagement

  • Identify common open-source license families (permissive: MIT, Apache 2.0; copyleft: GPL, AGPL; source-available: BSL, Elastic) and identify the implications of each for commercial use.
  • Apply contributing etiquette: read CONTRIBUTING.md, start with issues, write tests, keep PRs scoped, respond to review feedback.

Software Engineering Career

  • Identify common engineering career paths: junior → senior → staff/principal (IC track); junior → tech lead → engineering manager (management track); junior → architect.
  • Apply self-assessment of growth dimensions: technical depth, breadth, leverage, ownership, communication, mentorship.

Industry Norms

  • Identify reliable continuous-learning sources for engineers: language-specific docs, system-design newsletters (Pragmatic Engineer, ByteByteGo), conference talks (Strange Loop, !!Con, language-specific cons).
  • Identify the value of writing publicly: blog posts, talks, open-source contributions — for both learning and career capital.
  • Apply 'learn-in-public' patterns: weekly engineering journal, technical blog posts, conference proposals based on real production lessons.

Mentorship and Code Review Culture

  • Identify the role of mentorship in engineering culture: structured pairing, code review as teaching, growth-focused 1:1s.
  • Apply effective code-review feedback patterns: separate must-fix from suggestion, give context for the request, include positive notes alongside critiques.

Sustainability of Engineering Work

  • Identify burnout signals and sustainability practices: on-call rotation discipline, blameless postmortems, work-life boundary communication, regular vacation cadence.
  • Analyze a chronically-burned-out team and identify the structural causes (alert volume, on-call frequency, lack of slack capacity, leadership pressure) rather than individual remedies.

What's Included in AccelaStudy® AI

Adaptive Knowledge Graph
Practice Questions
Lesson Modules
Console Simulator Labs
Exam Tips & Strategy
34 Activity Formats

Scope

Included Topics

  • Programming concepts: variables, control flow, functions, data structures, OOP basics.
  • Source control: Git, branching, merging, pull requests, code review.
  • SDLC: waterfall, agile, kanban, scrum.
  • Testing: unit, integration, end-to-end, test-driven development.
  • DevOps: CI/CD, build pipelines, deployment, observability.
  • Secure coding: OWASP Top 10 awareness, code review practices, dependency hygiene.
  • Software architecture concepts: monolith, microservices, event-driven, serverless.
  • Documentation, code reviews, and team practices.

Not Covered

  • Hands-on coding exercises in any specific language.
  • Deep coverage of any single framework.

Official Exam Page

Learn more at ISACA

Visit

Ready to master SDF?

Adaptive learning that maps your knowledge and closes your gaps.

Enroll