Cisco 350-901 DEVCOR/AUTOCOR study plan
Cisco 350-901 DEVCOR/AUTOCOR · Give each week a clear focus.
8 weeks · About 6 hours per week
Software Development and Design
Set up a local Python 3 virtual environment with requests, Flask, and pytest installed, and verify each import runs cleanly
Write and run a small Flask service exposing three REST endpoints (GET collection, GET item, POST create) with JSON validation on input
Implement unit tests with pytest covering the happy path and two failure paths per endpoint, achieving passing runs for all tests
Explain in your own notes the difference between idempotent and non-idempotent HTTP methods and map each CRUD operation to the correct verb and status code
Your checkpoint
A Git repository containing the Flask service, its pytest suite, and a README documenting endpoint contracts and status codes, with a green test run captured in the commit history
Software Development and Design & Using APIs
Refactor the week-1 service to separate routing, business logic, and data access into distinct modules and confirm tests still pass
Consume a public REST API with Python requests, handling pagination, query parameters, and rate-limit responses (429) with retry and backoff
Add token-based authentication to your own Flask service and write a test proving that requests without a valid token receive 401
Document the API using an OpenAPI 3 specification file and validate that it parses without errors
Your checkpoint
A repository branch where the service is modularized, authenticated, and described by a validating OpenAPI document, plus a script that successfully paginates through a public API
Using APIs
Implement OAuth 2.0 authorization-code flow against a test identity provider and store the resulting token securely, avoiding hardcoded secrets
Write code that refreshes an expired access token automatically and prove it with a test that simulates a 401 followed by a successful refresh
Build a rate-limit-aware client wrapper that reads Retry-After headers and enforces exponential backoff with jitter
Compare REST and GraphQL or gRPC for a given scenario in a short written analysis covering payload shape, tooling, and error handling
Your checkpoint
A reusable Python API client library with token refresh, retry logic, and tests, published to a local package index or installed via pip from the repo
Using APIs & Cisco Platforms and Development
Authenticate to a Cisco platform API sandbox (such as a DNA Center or Meraki developer sandbox) and retrieve a list of devices
Write a script that pulls device inventory and writes a normalized JSON report including model, serial, and reachability status
Handle and log API errors from the Cisco platform distinctly from network errors, with clear log messages
Identify which Cisco platform API best fits three described use cases (campus fabric assurance, cloud-managed wireless, SD-WAN policy) and justify each choice in writing
Your checkpoint
A working inventory-report script against a Cisco sandbox plus a one-page platform-selection write-up, committed together
Cisco Platforms and Development
Implement a webhook receiver that validates an incoming payload signature and rejects tampered requests
Use a Cisco platform SDK or model-driven interface to push a configuration change to a sandbox device and verify the change took effect
Add structured logging and error handling to the webhook receiver so failed validations are traceable
Write tests for the webhook receiver covering valid signature, invalid signature, and malformed payload cases
Your checkpoint
A deployable webhook receiver service with passing tests and a recorded demonstration of a successful configuration push to a sandbox
Application Deployment and Security
Containerize the week-1 service with a multi-stage Dockerfile and confirm the image runs locally with environment-injected configuration
Define a CI pipeline that lints, tests, and builds the container image on every push
Scan the built image for vulnerabilities and document how you would triage a high-severity finding
Store all credentials in environment variables or a secrets manager and prove no secret appears in the repository history
Your checkpoint
A CI configuration file plus a container image build artifact with a passing pipeline run and a short vulnerability-triage note
Application Deployment and Security & Infrastructure and Automation
Deploy the containerized service to a local orchestrator or cloud free tier and expose it through a health-checked endpoint
Configure TLS termination and verify the service rejects plaintext traffic
Write an infrastructure-as-code definition (Terraform or similar) that provisions the deployment target and apply it successfully
Add a rolling-update or blue-green strategy note explaining how you would roll back a failed release
Your checkpoint
An applied infrastructure-as-code stack and a reachable HTTPS endpoint running the service, with the apply output and rollback note committed
Infrastructure and Automation & Software Development and Design
Automate configuration backup of sandbox devices on a schedule and diff successive backups to detect drift
Trigger an alert when drift is detected, using a webhook or log-based mechanism
Refactor the accumulated scripts into a single documented CLI tool with subcommands for inventory, deploy, and backup
Complete two timed practice sets covering all five domains and log every missed question with the underlying concept and a corrective action
Your checkpoint
A documented CLI tool with drift-detection and alerting, plus a scored practice-exam log with a remediation list for each weak area
Milestones
Week 2: Your Flask service passes its full test suite, is documented by a validating OpenAPI file, and enforces token authentication
Week 4: You can authenticate to a Cisco sandbox and produce a normalized device inventory report from live API data
Week 6: Your CI pipeline lints, tests, scans, and builds a container image on every push with no secrets in repository history
Week 8: A reachable HTTPS deployment exists, drift detection alerts on change, and your practice-exam log shows a remediation plan for every missed concept