DEVASC: Developing Applications & Automating Workflows - Cisco Pl



Kursarrangør: SG Partner AS
Sted: Nettkurs / Nettstudie
Hele landet
Type:Bedriftsinternt / Større grupper
Nettkurs og nettstudie
Studie / yrkesutdanning
Undervisningstid: Ta kontakt for informasjon
Varighet: 5 dager
Pris: 51.500
Neste kurs: 03.06.2024 | Vis alle kursdatoer

The Developing Applications and Automating Workflows Using Cisco Core Platforms course helps you prepare for the Cisco® DevNet Associate certification and for associate-level network automation engineer roles.

You will learn how to implement basic network applications using Cisco platforms as a base, and how to implement automation workflows across network, security, collaboration, and computing infrastructure. The course gives you hands-on experience solving real world problems using Cisco Application Programming Interfaces (APIs) and modern development tools.

This course helps you prepare for the DevNet Associate (DEVASC) exam. By passing this exam, you earn the Cisco Certified DevNet Associate certification.

After completing this course you should be able to:
• Describe the importance of APIs and use of version control tools in modern software development
• Describe common processes and practices used in software development
• Describe options for organizing and constructing modular software
• Describe HTTP concepts and how they apply to network-based APIs
• Apply Representational State Transfer (REST) concepts to integration with HTTP-based APIs
• Describe Cisco platforms and their capabilities
• Describe programmability features of different Cisco platforms
• Describe basic networking concepts and interpret simple network topology
• Describe interaction of applications with the network and tools used for troubleshooting issues
• Apply concepts of model-driven programmability to automate common tasks with Python scripts
• Identify common application deployment models and components in the development pipeline
• Describe common security concerns and types of tests, and utilize containerization for local development
• Utilize tools to automate infrastructure through scripting and model-driven programmability

Course content:
Practicing Modern Software Development
Rise of APIs in Software Design
API Data Formats
Serialization and Deserialization of Data
Collaborative Software Development
Version Control with GIT
Branching with GIT

Describing Software Development Process ( Self-Study)
• Software Development Methodologies
• Test-Driven Development
• TDD Example
• Code Review

Designing Software (Self-study)
• Modular Software Design
• Modular Design Benefits
• Architecture and Design Patterns
• MVC Architecture Pattern
• Observer Design Pattern

Introducing Network-Based APIs
• HTTP Protocol Overview
• HTTP Protocol Applied to Web-Based APIs
• HTTP Content Negotiation
• RPC-Style APIs
• REST-Style APIs
• Postman for REST API Consumption
• Advanced Postman Topics
• Consuming notification Events Using Webhooks

Consuming REST-Based APIs
• Common API Constraints
• API Authentication Mechanisms
• Using HTTP Authentication
• Leveraging HTTPS for Security
• Handling Secrets for API Consumption

Introducing Cisco Platforms and APIs (Self-study)
• Cisco Network Management Platforms
• Cisco Compute Management Platforms
• Cisco Compute Management APIs
• Cisco Collaboration Platforms
• Cisco Collaboration APIs
• Cisco Security Platforms
• Cisco Security APIs
• Cisco Network Management Platforms in Cloud

Employing Programmability on Cisco Platforms
• Automating Cisco Network Operations
• Cisco IOS XE Device-Level APIs
• Cisco NX-OS Device-Level APIs
• Cisco Controller APIs
• Automating Cisco Webex Teams Operations
• DevNet Developer Resources

Describing IP Networks (Self-Study)
• Basic Networking Concepts
• MAC Addresses and VLANs
• Network Routes and Routing
• Transport Layer and Packet Delivery
• Network Device Planes

Relating Network and Applications
• Standard IP Network Services
• Network Address Translation
• Common Protocols
• Application Connectivity Issues
• Tools for Troublshooting Connectivity Issues
• Explaining the Impact of Network Constraints on Applications

Employing Model-Driven Programmability
• Model-Driven Programmability Stack
• Network Automation and NETCONF
• Exploring YANG Models
• Utilizing Data Models with RESTCONF Protocol
• Using Python Scripts and Cisco SDKs
• Model Driven Programmability in a Cisco Environment

Deploying Applications
• Application Deployment Types
• Application Deployment Models
• Edge Computing Overview
• DevOps Practices and Principles
• Components of a CI-CD Pipeline
• Essential Bash Commands for Development and Operations

Automating Infrastructure
• SDN and Intent-Based Networking
• Infrastructure as Code
• System Management with Ansible
• Infrastructure Automation with Ansible Playbooks
• CI/CD Pipelines for Infrastructure Automation

Testing and Securing Applications
• Software Test Types
• Verifying Code Behaviour with Unit Tests
• Dockerfile Composition
• Using Docker in a Local Developer Environment
• Application Security
• Securing and Scaling Application Ingress Traffic
• Network Simulation and Test Tools

Labs:
• Parse API Data Formats with Python
• Use Git for Version Control
• Identify Software Architecture and Design Patterns on a Diagram
• Implement Singleton Pattern and Abstraction-Based Method
• Inspect HTTP Protocol Messages
• Use Postman
• Troubleshoot an HTTP Error Response
• Utilize APIs with Python
• Use the Cisco Controller APIs
• Use the Cisco Webex Teams™ Collaboration API
• Interpret a Basic Network Topology Diagram
• Identify the Cause of Application Connectivity Issues
• Perform Basic Network Configuration Protocol (NETCONF) Operations
• Use Cisco Software Development Kit (SDK) and Python for Automation Scripting
• Utilize Bash Commands for Local Development
• Construct Infrastructure Automation Workflow
• Construct a Python Unit Test
• Interpret a Dockerfile
• Utilize Docker Commands to Manage Local Developer Environment
• Exploit Insufficient Parameter Sanitization

Target audience:
This course is designed for anyone who performs or seeks to perform a developer role and has one or more years of hands-on experience developing and maintaining applications that are built on top of Cisco platforms.

The course is appropriate for software developers, application developers, and network engineers who want to expand their skill base and validate their skills in programmability, software, and automation. Students preparing for Cisco Certified DevNet Associate certification.

Prerequisites:
Attendees should meet the following prerequisites:
• Working knowledge of fundamental terms of computer networking, including LANs, WANs, switching, and routing
• Basics of digital interfaces, public switched telephone networks (PSTNs), and voice over IP (VoIP)
• Fundamental knowledge of converged voice and data networks and Cisco Unified Communications Manager deployment

Recommended prerequisites:
• PRNE-CPLL - Programming for Network Engineers - CPLL

Test certification:
Recommended as preparation for the following exams:
• 200-901 - DevNet Associate Exam

Vis flere tilsvarende kurs: