Software Development and Design
Compare data formats (XML, JSON, and YAML)
Describe parsing of common data format (XML, JSON, and YAML) to Python data structures
Describe the concepts of test-driven development
Compare software development methods (agile, lean, and waterfall)
Explain the benefits of organizing code into methods / functions, classes, and modules
Explain the advantages of common design patterns (MVC and Observer)
Explain the advantages of version control
Utilize common version control operations with Git
Clone
Add/remove
Commit
Push / pull
Branch
Merge and handling conflicts
diff
Understanding and Using APIs
Construct a REST API request to accomplish a task given API documentation
Describe common usage patterns related to webhooks
Describe the constraints when consuming APIs
Explain common HTTP response codes associated with REST APIs
Troubleshoot a problem given the HTTP response code, request and API documentation
Interpret the parts of an HTTP response (response code, headers, body)
Utilize common API authentication mechanisms: basic, custom token, and API keys
Compare common API styles (REST, RPC, synchronous, and asynchronous)
Construct a Python script that calls a REST API using the requests library
Cisco Platforms and Development
Construct a Python script that uses a Cisco SDK given SDK documentation
Describe the capabilities of Cisco network management platforms and APIs (Meraki, Cisco Catalyst Center, ACI, Cisco Catalyst SD-WAN, and NSO)
Describe the capabilities of Cisco compute management platforms and APIs (UCS Manager and Intersight)
Describe the capabilities of Cisco collaboration platforms and APIs (Webex, Webex devices, Cisco Unified Communication Manager including AXL and UDS interfaces)
Describe the capabilities of Cisco security platforms and APIs (XDR, Firepower, Secure Connect, Secure Endpoint, ISE, and Secure Malware Analytics)
Describe the device level APIs and dynamic interfaces for IOS XE and NX-OS
Describe the appropriate DevNet resource for a given scenario (Sandbox, Code Exchange, support, forums, Learning Labs, and API documentation)
Apply concepts of model driven programmability (YANG, RESTCONF, and NETCONF) in a Cisco environment
Construct code to perform a specific operation based on a set of requirements and given API reference documentation such as these:
Obtain a list of network devices by using Meraki, Cisco Catalyst Center, ACI, Cisco Catalyst SD-WAN, or NSO
Manage spaces, participants, and messages in Webex
Obtain a list of clients / hosts seen on a network using Meraki or Cisco Catalyst Center
Application Deployment and Security
Describe the benefits of edge computing
Describe the attributes of different application deployment models (private cloud, public cloud, hybrid cloud, and edge)
Describe the attributes of these application deployment types
Virtual machines
Bare metal
Containers
Describe components for a CI/CD pipeline in application deployments
Construct a Python unit test
Interpret contents of a Dockerfile
Utilize Docker images in local developer environment
Describe application security issues related to secret protection, encryption (storage and transport), and data handling
Explain how firewall, DNS, load balancers, and reverse proxy in application deployment
Describe top OWASP threats (such as XSS, SQL injections, and CSRF)
Utilize Bash commands (file management, directory navigation, and environmental variables)
Describe the principles of DevOps practices
Infrastructure and Automation
Describe the value of model driven programmability for infrastructure automation
Compare controller-level to device-level management
Describe the use and roles of network simulation and test tools (such as Cisco Modeling Labs and pyATS)
Describe the components and benefits of CI/CD pipeline in infrastructure automation
Describe principles of infrastructure as code
Describe the capabilities of automation tools such as Ansible, Terraform, and Cisco NSO
Identify the workflow being automated by a Python script that uses Cisco APIs including ACI, Meraki, Cisco Catalyst Center, and RESTCONF
Interpret the workflow being automated by an Ansible playbook (management packages, user management related to services, basic service configuration, and start/stop)
Interpret the workflow being automated by a bash script (such as file management, app install, user management, directory navigation)
Interpret the results of a RESTCONF or NETCONF query
Interpret basic YANG models
Interpret a unified diff
Describe the principles and benefits of a code review process
Interpret a sequence diagram that includes API calls
Network Fundamentals
Describe the purpose and usage of MAC addresses and VLANs
Describe the purpose and usage of IP addresses, routes, subnet mask / prefix, and gateways
Describe the function of common networking components (such as switches, routers, firewalls, and load balancers)
Interpret a basic network topology diagram with elements such as switches, routers, firewalls, load balancers, and port values
Describe the function of management, data, and control planes in a network device
Describe the functionality of these IP Services: DHCP, DNS, NAT, SNMP, NTP
Recognize common protocol port values (such as, SSH, Telnet, HTTP, HTTPS, and NETCONF)
Diagnose application connectivity issues (NAT problem, Transport Port blocked, proxy, and VPN)
Explain the impacts of network constraints on applications