Skip to Content
View all events

Coding Skills for Network Engineers

Published by Pearson

Intermediate content levelIntermediate

Learn how to build and maintain network automation systems with formal programming skills

  • Network engineers need to know structures, such as variables, arrays, and sorting algorithms, to build and maintain effective network automation systems
  • Network engineers need to understand program flow, how to divide a software project into functions, and software architecture, to build maintainable network automation systems
  • Network engineers need to know how to use Git as a repository for automation code, including forking and code review processes

Network engineers are increasingly expected to know how to perform basic coding, like building scripts to gather information and build or maintain an automation system. In larger organizations with full-time coders, network engineers are expected to effectively work with coders, on their own turf, to build and maintain network automation systems. All of these tasks require a basic knowledge of the structure and terminology of programming.

There are a lot of courses that show you how to build your first program, or how to perform basic tasks using common programming languages—this course is different. This course will help you build a “mental map” of the software development space, gathering ideas and patterns learned across years into a simple-to-understand format. In this course you will learn data structures, program flow control, and—most importantly—how to structure software for efficiency and maintainability over the long haul.

What you’ll learn and how you can apply it

  • Basic data structures, flow control, and algorithms
  • Methods to connect to and control network devices
  • How to build properly modularized software by breaking problems down into their components
  • How to use Git

And you’ll be able to:

Complete the sentence with 3-4 actions or skills attendees will be able to do

  • Break a problem into components and build a properly structure program to solve it
  • Build a simple program to access and process BGP routing information
  • Use Git to manage pull requests and merges

This live event is for you because...

You're a network engineer who is just learning to code, would like to understand programming in a more structured way, or would like to interact with full-time coders more effectively.

Prerequisites

  • A basic understanding of the Python language
  • A basic understanding of networking technologies, including routing protocols

Recommended Preparation:

Recommended Follow-up

Schedule

The time frames are only estimates and may vary according to how the class is progressing.

Segment 1: Basic Concepts (55 minutes)

  • Languages Overview
  • Data Structures
  • Controlling Program Flow
  • Principles of program composition
  • Q&A (5 minutes)
  • Break (5 minutes)

Segment 2: Connecting and Interacting (50 minutes)

  • Methods of connecting to a device
  • Device object models
  • Q&A (5 minutes)
  • Break (5 minutes)

Segment 3: Managing Code (50 minutes)

  • Structuring code files
  • Style and maintainability
  • Using Git
  • Q&A (5 minutes)

Segment 4: Testing and Putting it all Together (55 minutes)

  • Building tests
  • Fuzzing
  • The entire process

Course wrap-up and next steps (5 minutes)

Your Instructors

  • Russ White

    Russ White has experience in designing, deploying, breaking, and troubleshooting large scale networks, and is a strong communicator from the white board to the board room. He has co-authored more than forty software patents, participated in the development of several Internet standards, helped develop the CCDE and the CCAr, and worked in Internet governance with the Internet Society. Russ has a background covering a broad spectrum of topics, including radio frequency engineering and graphic design, and is an active student of philosophy and culture. Russ is a co-host of the Hedge podcast, serves on the Routing Area Directorate and the Internet Architecture Board at the IETF, co-chairs the BABEL working group, and serves on the Technical Services Council/as a maintainer on the open source FR Routing project. His most recent works are Computer Networking Problems and Solutions and Unintended Dystopia. Russ regularly teaches live webinars on Internet technology through Safari Books Online, as well. MSIT Capella University MACM Shepherds Theological Seminary PhD, Southeastern Baptist Theological Seminary CCIE #2635, CCDE 2007::1, CCAr

    linkedinXlinksearch
  • Marlon Bailey

    Marlon Bailey has over thirty years of experience in creating, designing, and consulting on software. Throughout his career, he has built and led several development teams which has required designing and integrating SDLC processes from the ground up. Marlon's professional background spans across startups, medium-sized enterprises, and large corporations, providing him with a deep understanding of resolving complex challenges under varying timeframes, budgets, and team sizes.

    Marlon is currently a Principal Software Engineer in the security division of Akamai Technologies, where he builds software that helps Akamai protect companies and their customers from DDoS attacks.

Skill covered

Coding Practices