5.0
(4 ratings)
1 Day
·Cohort-based Course
This course will help you become a better software engineer by building your own Redis server.
5.0
(4 ratings)
1 Day
·Cohort-based Course
This course will help you become a better software engineer by building your own Redis server.
Course overview
Course Content:
An introduction to Redis, how it’s built and the data structures it uses.
How to break a project down into steps.
Choosing a technology stack for a project.
The benefits and use of Architecture Decision Records.
Using Test Driven Development to develop software.
Automating build and test in a CI pipeline.
Code reviews - how to review code and the benefits of code reviews.
Network programming - how to write programs that talk over a network.
A look at the tradeoffs between threading and async when building servers.
Performance optimisation.
01
New developers who want to learn how to build robust software from scratch by breaking a project down into steps then managing delivery.
02
Mid-level developers who want to learn how to sharpen their skills, improve their unit testing and gain experience code reviewing.
03
Senior+ developers who want to learn from their peers and gain insights on how others tackle real-world problems with a hands on project.
04
Engineering Managers - who want to remain hands on and refresh their understanding of current software development methodologies.
Learn about Redis, how it's built, and the data structures behind it
Redis is one of the most widely used key-value / NoSQL databases. It's also a great example of the power of Open Source software, great code and great documentation.
Learn how to approach breaking a software development project into small stages
Learn how to break a software project into small achievable stages when developing from scratch.
Learn to use Architecture Decision Records to document and share key software architecture decisions
Learn about these lightweight documents that capture important architectural decisions along with the when, how and why of the decision.
Learn when to make use of them in a software development project and how they can help us maintain high quality software.
Learn about Test Driven Development
Discover how test driven development can allow us to make progress on delivering software without needing a fully functional system.
Get to grips with the testing libraries in your chosen technology stack and use them to build high quality software.
Build a CI pipeline for your project
Build a CI pipeline for your Redis Server to automate the build and test of the server allowing rapid iteration.
Learn how to review code and receive code review feedback
You will learn how to review code.
You will also learn how to review code you've never seen before, potentially in a programming language you've never used.
Learn network programming
You'll be building a server that will accept incoming network connections and handle multiple concurrent clients.
Learn to consider threading versus async code for concurrency
Gain an understanding of the limitations of threading and the challenges of async code so you can make informed decision when building servers or other concurrent code.
Interactive live sessions
Lifetime access to course materials
14 in-depth lessons
Direct access to instructor
13 projects to apply learnings
Guided feedback & reflection
Private community of peers
Course certificate upon completion
Maven Satisfaction Guarantee
This course is backed by Maven’s guarantee. You can receive a full refund within 14 days after the course ends, provided you meet the completion criteria in our refund policy.
Become a Better Software Developer by Building Your Own Redis Server
Week 1
Mar 9
Modules
Post-Course
Modules
I'm a software engineer and sometimes a manager of software engineers. I've worked as both a senior individual contributor (Staff+) and a senior manager (VP Engineering, Head of Software Development).
I've worked across many tech stacks. I've spent most of the last six years building distributed systems with Python and Flask deployed on AWS using CloudFormation and some CDK.
Recently I've done some TypeScript/JavaScript, React and Next.js on the frontend with Node.js and Express on the backend. All deployed on AWS using CDK.
For most of my career before that I worked in C++. I'm coming the full circle now and currently learning Rust. Coding Challenges was born out of the process of learning Rust by building real-world applications.
Be the first to know about upcoming cohorts
Bulk purchases
4-8 hours per week
Mondays & Thursdays
1:00pm - 2:00pm EST
For 45 minutes to an hour each Monday and Thursday there will be a live session to introduce the next projects and conduct peer reviews and group discussions led by me.
Weekly projects
2-6 hours per week
You should expect to spend 2 to 6 hours per week to complete the assigned study and project work.
Active hands-on learning
This course builds on live workshops and hands-on projects
Interactive and project-based
You’ll be interacting with other learners through breakout rooms and project teams
Learn with a cohort of peers
Join a community of like-minded people who want to learn and grow alongside you
What happens if I can’t make a live session?
I work full-time, what is the expected time commitment?
What’s the refund policy?
What programming language can I use?
Does each participant develop their own clone or is it like a team project?
Sign up to be the first to know about course updates.
Be the first to know about upcoming cohorts
Bulk purchases