ONTIC Doc (Template)

Reusable template for writing general ONTIC tech or non-tech notes with enough structure to capture purpose, architecture, workflow, and improvemen...

Reusable template for writing general ONTIC tech or non-tech notes with enough structure to capture purpose, architecture, workflow, and improvement ideas.

General Tech Article Template

  1. Purpose

    Why was this built? Original problem it solves. What would break if it did not exist? Impact on the system.

  2. Deconstruction

    How does it work? Break down key components. Dependencies? What other parts of the system rely on this. Why was it designed this way? Trade-offs and constraints.

  3. Reconstruction

    If built today, what would change? Would this feature still be needed, or can it be simplified or replaced? Proposed improvements.


[System/Module Name] - Quick Documentation

1. What is this?

  • Briefly describe what this system or module does in 2 to 3 lines
  • Why does it exist and what problem does it solve

2. Architecture & Integration (HLD)

  • How does it fit into the system, in 1 to 2 sentences
  • Simple diagram or bullet points for key components and data flow

3. Key Components & Workflow

Design choices can include LLD

  • Main parts of the system, for example producer-consumer, job scheduler, cache, API service
  • How data moves through these components

4. Critical Configurations & Scaling / Performance

  • Key configurations, for example Kafka partitions, Redis eviction policy, database indexing
  • How it scales, for example horizontal scaling, sharding, auto-scaling setup

5. Failure Scenarios & Trade-offs

  • What breaks if X fails
  • How the system handles failures, for example retries, backups, failover strategy

6. If I Were to Redesign It

  • Any bottlenecks or inefficiencies
  • How I would improve it, quick thoughts on alternative approaches

What?

  • Will involve a general holistic view discussion over anything tech or non-tech in ONTIC
  • Stuff about design and architecture of different ONTIC components
  • Discussion over important or useful frameworks designed in ONTIC
  • Improvements in current frameworks are also appreciated

Why?

  • For learning purposes and to become a better version of current self
  • ONTIC tech in general has lots of cool stuff and also lots of unnecessary stuff, so it is better to discuss the cool stuff here
  • Better understanding of ONTIC will help in solving day-to-day tasks and reduce stress or pressure on oneself, although that is not always guaranteed
  • Also, what is the point of just working if you are not learning? So let’s understand the complex platform by dissecting the most important or cool parts

How?

  • Follow a general ONTIC template when writing, because it will be easier for another person to read and understand
  • Try to break the concept down as much as possible so that even a five-year-old genius can understand
  • Be concise, but do not go into too much detail if not needed, as things will change in the future
  • Try to give improvements, if any, in the end

ONTIC TEMPLATE

Follow this template while writing anything in this section.

  1. INTRO
    • Introduction about the component or framework you are explaining
    • This must include the current version of the component or framework, as it is subject to change in the future
  2. VALUE
    • What value or importance the current component is bringing
    • What problem it is solving
  3. HOLISTIC OVERVIEW (HLD)
    • A broad-level picture of the current system and its working
  4. DETAILED OVERVIEW
    • A detailed design and working of the system
    • This should be a bigger section and should include all technical details of the system
    • Coupling
      • This subsection can be used to describe the other components affected by the current system
  5. IMPROVEMENTS
    • Things that can be improved in the future, if any