This web-based utility helps you perform quick, "back-of-the-envelope" calculations for both general estimation problems and common system design interview topics. It lets you break down complex problems, document assumptions, and get instant results. Perfect for engineers, product managers, students, and anyone needing fast, reasonable estimates.

- Custom Formula Estimator: Define your own estimation problem, add parameters, and write formulas for Fermi problems or any rough calculation.
- System Design Use Case Estimator: Select from common system design topics (Requests Per Second, Storage, Bandwidth, Latency) and get instant calculations with pre-filled examples (e.g., Twitter QPS).
- Dynamic Inputs: Add/remove parameters and assumptions on the fly.
- Real-time Calculation: Results update instantly as you change values.
- Clear Breakdown: See the full calculation and trace your steps.
- No Backend Needed: Runs entirely in the browser using HTML, CSS, and JavaScript.
- HTML5
- CSS3
- JavaScript (ES6+)
git clone https://github.com/angga-22/BTEE.git
- Clone the repository:
git clone https://github.com/angga-22/BTEE.git
- Navigate to the project directory:
cd back-of-the-envelope-estimator - Open
index.htmlin your web browser.- No dependencies or build steps required.
- Define the Goal: Clearly state what you are trying to estimate (e.g., "Number of piano tuners in Chicago").
- Add Parameters: Click the "Add Parameter" button for each variable or assumption.
- Name: Descriptive name (e.g., "Population of Chicago").
- Value: Numeric value.
- Notes: Brief explanation or source.
- Define the Formula: Write the calculation using parameter names. Use standard math operators (+, -, *, /).
- View the Result: The estimated result and calculation steps will appear instantly.
- Select Topic: Choose a system design topic (e.g., Requests Per Second).
- Fill Inputs: Enter values or use pre-filled examples.
- Example: Twitter QPS
- Number of Users:
300,000,000(monthly active users) - Requests per User per Day:
40 - Formula:
QPS = (users * requests per user per day) / 86400 - Result: ~139,000 requests/sec
- Number of Users:
- Example: Twitter QPS
- Estimate: Click "Estimate" to see the result.
back-of-the-envelope-estimator/
├── index.html # Main HTML file
├── style.css # CSS for styling
├── script.js # JavaScript logic
└── README.md # Documentation
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.
This project is licensed under the MIT License.