Modern Software Engineering
This course is designed to equip you with a comprehensive understanding of modern software engineering tools, processes, and practices, specifically in the context of building, deploying, and operating web services in a public cloud environment. Through hands-on experience, you'll learn how to set up a software delivery system, produce a software artifact, and successfully deploy it in a production environment. The course is designed to focus on industry-relevant tools and practices, informed by Nikolai Avteniev's extensive experience at industry giants such as LinkedIn and Stripe. By the end of this course, you'll have the practical skills and knowledge needed to excel in the field of software engineering.
Course taught by expert instructors

Nikolai Avteniev
Agile Software Developer
Nikolai is a Staff Software Engineering at Stripe. Prior to that he was a Tech Lead on LinkedIn’s Developer Productivity and Happiness team focused on evolving LinkedIn’s software engineering system. Nikolai’s career spans more than twenty years building software in a variety of environments, from large banks, JPMorgan Chase, to boutique software shops, Real Time Risk System, VC Funded NYC Ad Tech startups, Intent Media, to Silicon Valley, LinkedIn. Nikolai earned a graduate degree in Computer Science from NYU, and is an Adjunct CS instructor at the City College of New York.
The course
Learn and apply skills with real-world projects.
Professional software engineers whose organizations are starting their Agile or DevOps journey.
Engineering Leaders who are looking to improve the effectiveness of their engineering organizations
Software developers looking to improve their personal effectiveness in a medium to large software-driven business.
Working knowledge of at least one modern programming language (Go, Java, JavaScript, Python).
Experience reading empirical software engineering research.
Background in software development.
Try these prep courses first
- Learn
- What is test automation?
- Different types of automated tests?
- Measuring test effectiveness?
- What is continuous integration and delivery?
Project- Write a suite of unit tests to exercise the code logic of your application.
- Write a suite of integration tests to validate interaction with your system's dependencies
- Write an end-to-end test to validate that your system operates as expected when fully deployed.
- Set up a CI/CD pipeline for your service.
- Learn
- Source code management fundamentals?
- Repository setup tradeoffs
- How to set up an effective code review pipeline?
- What does it take to manage technical debt?
Project- A code review pipeline to validate new contributions.
- Setup static code analyzers to keep the source code consistent
- Setup complexity measurements to let you know when it’s time to clean up.
- Learn
- How much design and architecture do you need?
- When and how to fit SDA into your software delivery system?
- What artifacts do you need to produce and how to manage them?
- What do all the cloud acronyms mean and how to use them?
Project- A continuous deployment pipeline that will automatically deploy every change made to your system.
- Implement a build process to package your system for deployment.
- Implement a deployment script that will automatically provision the compute resources your application needs.
- Learn
- What is observability anyway?
- How do you instrument your application?
- What are all these 9s about?
- How do you debug a distributed system?
Project- A monitoring pipeline for your application running in production.
- Implement business metrics
- Setup monitoring dashboard and alerts.
- Enable distributed tracing
A course you'll actually complete. AI-powered learning that drives results.
AI-powered learning
Transform your learning programs with personalized learning. Real-time feedback, hints at just the right moment, and the support for learners when they need it, driving 15x engagement.
Live courses by leading experts
Our instructors are renowned experts in AI, data, engineering, product, and business. Deep dive through always-current live sessions and round-the-clock support.
Practice on the cutting edge
Accelerate your learning with projects that mirror the work done at industry-leading tech companies. Put your skills to the test and start applying them today.
Flexible schedule for busy professionals
We know you’re busy, so we made it flexible. Attend live events or review the materials at your own pace. Our course team and global community will support you every step of the way.
Completion certificates
Each course comes with a certificate for learners to add to their resume.
Best-in-class outcomes
15-20x engagement compared to async courses
Support & accountability
You are never alone, we provide support throughout the course.
Get reimbursed by your company
More than half of learners get their Courses and Memberships reimbursed by their company.
Hundreds of companies have dedicated L&D and education budgets that have covered the costs.