All in One Offer! | Access Unlimited Courses in any category starting at just $29. Signup today. Offer Ends in: 7 Days!

Browse Library

Get Unlimited Learning Access
$29
7 days left at this price!
30-Day Money-Back Guarantee

It Includes

  • Get Full Access to the platform
  • Access upto 16000+ online courses
  • Play & Pause Course Viewing
  • HD Recorded Lectures
  • Access on Mobile/PC/Tablet
  • Includes Real Projects
  • Online iLab Access
  • Certificate of Completion
  • Download for offline viewing
  • Cancel Anytime
$29
  • Debugging as a deductive process
  • Things to consider in production system analysis
  • Methods to isolate root cause without rushing to attaching debuggers
  • Understanding systems as permuatation of components
  • Factors to consider while dealing with systems with components owned by different teams
  • Different engineering communication channels that dictate the scope for debugging

Debugging is more than just attaching a debugger to a running program. Identifying the correct root cause is a skill. In addition, the complexity of distributed systems and multi-language stacks makes debugging even harder.

The key to a long career in software is the ability to build large systems. Large-scale systems cannot be created on a single machine using a single programming language. Hence one has to evolve into a generalist engineer to lead such efforts. Irrespective of role, understanding complexity and ability to navigate it during production fire fighting is a growth accelerator in the industry. 

The course takes a generic view of workflows leading to frequently occurring debugging problems in large systems. Intentionally no tool details or deep dives are included. Instead, a guidance framework is provided for the students to explore further in their day job or software projects.

This course is for people who consider themselves problem solvers ahead of their designation and qualifications. For example, if you believe only developers should debug or only support should talk to customers, then this course is incompatible with your ideas.

Each section represents the debugging consideration for a particular scenario.

Course Outline

  • Section 1: Introduction to communication flows in the industry

  • Section 2: Ecosystem Overview

  • Section 3: Production and Maintenance

  • Section 4: Deployment

  • Section 5: Integration

  • Section 6: Implementation

  • Section 7: Conclusion

  • Familiarity of systems with more than couple of services
  • Knowledge about at least one programming langauge
  • Willingness to followup on ideas in daily engineering tasks.
  • Active programmers in any language with polyglot systems
  • Full stack developers
  • Product developers targeting technical career path
  • Students looking forward to work in software industry
View More...
  • Section 1 : Introduction 7 Lectures 00:13:42

    • Lecture 1 :
    • Introduction to debugging from software engineering perspective. Preview
    • Lecture 2 :
    • Software Development Lifecycle communications
    • Lecture 3 :
    • Communications overall workflow
    • Lecture 4 :
    • Customer Support workflow
    • Lecture 5 :
    • Bug Workflow
    • Lecture 6 :
    • Production Support Workflow
    • Lecture 7 :
    • Product Development Workflow
  • Section 2 : Basic system overview 3 Lectures 00:05:37

    • Lecture 1 :
    • Understanding the scope
    • Lecture 2 :
    • Data Boundaries to be identified while debugging
    • Lecture 3 :
    • Challenges in debugging
  • Section 3 : Production and Maintenance 6 Lectures 00:09:24

    • Lecture 1 :
    • Alerts
    • Lecture 2 :
    • Debugging production issues
    • Lecture 3 :
    • Log Files: Debug Assistant
    • Lecture 4 :
    • Core Files: Finding evidence to traceback events
    • Lecture 5 :
    • Debug Binaries
    • Lecture 6 :
    • IMPORTANT: Security's role while debugging
  • Section 4 : Deployment 7 Lectures 00:15:14

    • Lecture 1 :
    • Platform Compatability
    • Lecture 2 :
    • Scale and debugging
    • Lecture 3 :
    • Fault Tolerance
    • Lecture 4 :
    • Disaster Recovery: Debugging use case
    • Lecture 5 :
    • Upgrades and rollbacks debugging challenges
    • Lecture 6 :
    • Configuration Management
    • Lecture 7 :
    • Observability
  • Section 5 : Integration 2 Lectures 00:04:40

    • Lecture 1 :
    • Integration Tests
    • Lecture 2 :
    • Third Party Frameworks
  • Section 6 : Implementation 2 Lectures 00:05:41

    • Lecture 1 :
    • Unit Tests
    • Lecture 2 :
    • Design and Debugging
  • Section 7 : Conclusion 1 Lectures

    • Lecture 1 :
    • Conclusion
  • How do i access the course after purchase?

    It's simple. When you sign up, you'll immediately have unlimited viewing of thousands of expert courses, paths to guide your learning, tools to measure your skills and hands-on resources like exercise files. There’s no limit on what you can learn and you can cancel at any time.
  • Are these video based online self-learning courses?

    Yes. All of the courses comes with online video based lectures created by certified instructors. Instructors have crafted these courses with a blend of high quality interactive videos, lectures, quizzes & real world projects to give you an indepth knowledge about the topic.
  • Can i play & pause the course as per my convenience?

    Yes absolutely & thats one of the advantage of self-paced courses. You can anytime pause or resume the course & come back & forth from one lecture to another lecture, play the videos mulitple times & so on.
  • How do i contact the instructor for any doubts or questions?

    Most of these courses have general questions & answers already covered within the course lectures. However, if you need any further help from the instructor, you can use the inbuilt Chat with Instructor option to send a message to an instructor & they will reply you within 24 hours. You can ask as many questions as you want.
  • Do i need a pc to access the course or can i do it on mobile & tablet as well?

    Brilliant question? Isn't it? You can access the courses on any device like PC, Mobile, Tablet & even on a smart tv. For mobile & a tablet you can download the Learnfly android or an iOS app. If mobile app is not available in your country, you can access the course directly by visting our website, its fully mobile friendly.
  • Do i get any certificate for the courses?

    Yes. Once you complete any course on our platform along with provided assessments by the instructor, you will be eligble to get certificate of course completion.
  • For how long can i access my course on the platform?

    You require an active subscription to access courses on our platform. If your subscription is active, you can access any course on our platform with no restrictions.
  • Is there any free trial?

    Currently, we do not offer any free trial.
  • Can i cancel anytime?

    Yes, you can cancel your subscription at any time. Your subscription will auto-renew until you cancel, but why would you want to?

346 Course Views

2 Courses

I am a programmer with an MS in Electrical Engineering and 16+ years of experience in the software industry. I have held roles of principal engineer across multiple organizations, building products that serve billions. I have designed and implemented software solutions for Digital Cinema Distribution, Distributed Systems, Embedded Systems, Map Making, Insurance, Email Servers, and Data acquisition systems for a problem in the Astrophysics domain (master's thesis). The course(s) will help you in answering the following questions that dictate your priorities in life, WHY are you pursuing your current profession? How long do you WANT to pursue the current profession/job? How long do you HAVE to pursue the current profession/job? How long will your current profession/job RESPECT your contribution in exchange for rewards? Remaining relevant for decades in any industry is not just hard but, in many cases, impossible. However, accepting this fact can help you plan a peaceful retired life. There are many more variables in the equation of your peace of mind; start identifying them in these few minutes of assignments. I find peace in exploring the connection between the "How" and "Why" of any technical problem. Over the years, I have realized that research is a lifestyle and engineering is an attitude. The intent of all courses will be practical implementation and a long-term career perspective.
View More...
  • big-data-pipeline-applied-to-ufos

    Big Data Pipeline Applied to UFOs

    By : Eduardo Morelli

    Lectures 6 Beginner Level 0:16:47
  • git-and-github-version-control-the-complete-startup-guide

    Git and GitHub Version Control - Th...

    By : Abhilash Nelson

    Lectures 15 Beginner Level 1:34:6
  • statistics-for-data-scientists-and-data-analysts

    Statistics for Data Scientists and ...

    By : Phikolomzi Gugwana

    Lectures 31 Intermediate Level 0:36:49
  • big-data-and-hadoop

    Big Data and Hadoop

    By : Saheb Singh chaddha

    Lectures 26 Beginner Level 0:1:29
  • technical-writing-how-to-write-software-documentation-using-dita-xml

    Technical Writing: How to Write Sof...

    By : Jordan Stanchev

    Lectures 21 Beginner Level 3:35:45
  • apache-nifi-the-complete-guide-part-1

    Apache NiFi - The Complete Guide (P...

    By : Manoj G T

    Lectures 19 Beginner Level 1:23:18
Sign Up & Start Learning
By signing up, you agree to our Terms of Use and Privacy Policy
Create New Password
Enter your email address and we'll send you a link to reset your password.