Engineering Learning Resources
Post-Mortem Collection
- GitHub - danluu/post-mortems
- Comprehensive collection of engineering post-mortems from various companies
- Learn from real-world failures and incident responses
- Valuable resource for understanding system reliability and failure modes
Learning from Failures
- Incident Analysis: Detailed breakdowns of what went wrong and why
- Root Cause Analysis: Deep dives into underlying causes of failures
- Prevention Strategies: How teams prevent similar incidents
- Cultural Insights: How different organizations handle failures
- Technical Patterns: Common failure modes across different systems
Notable Companies
- Major Tech Companies: Google, Amazon, Microsoft, Facebook outages
- Financial Services: Bank and trading system failures
- Infrastructure Providers: Cloud provider and CDN outages
- Startups to Enterprises: Lessons from organizations of all sizes
Data Visualization Tools
termplotlib - Terminal Plotting
- GitHub - nschloe/termplotlib
- Python library for creating plots directly in the terminal
- Useful for quick data visualization in command-line environments
- ASCII-based plotting for servers and headless environments
Terminal Plotting Benefits
- No GUI Required: Works in SSH sessions and headless environments
- Quick Visualization: Fast plotting for exploratory data analysis
- Scriptable: Easy integration into automation and monitoring scripts
- Lightweight: Minimal dependencies and resource usage
Use Cases
- Server Monitoring: Plot metrics directly on servers
- Data Analysis: Quick plots during data exploration
- CI/CD Pipelines: Visualize test results and metrics
- Log Analysis: Plot trends from log data
Technical Community
Technical Twitter Account
- Happy Automata Twitter
- Technical Twitter account sharing interesting content
- Curated technical content and discussions
- Part of the broader technical Twitter community
Key Takeaways
- Learning from Failures: Post-mortems are invaluable for understanding system reliability
- Visualization Accessibility: Not all visualization needs complex GUI tools
- Community Learning: Technical communities share valuable insights and resources
- Multiple Learning Channels: Combine formal documentation with community resources
- Practical Tools: Simple tools often solve real-world problems effectively
These resources demonstrate different ways to learn and grow as an engineer - from studying failures to creating quick visualizations to engaging with technical communities.