Backend engineer with 13+ years of experience building production systems using Django, Node.js, Go, Elixir, and Erlang/OTP.
I have contributed to:
- Node.js
- Elixir
- Erlang/OTP documentation
- Scala Website — preserved in the GitHub Arctic Code Vault
I write about backend engineering, distributed systems, concurrency, and lessons learned from solving real-world production problems.
I’m currently writing a hands-on series that explores how distributed systems work beneath high-level abstractions.
The series builds concepts incrementally using Elixir’s fundamental process primitives—spawn, send, receive, monitors, links, and exit signals—before moving toward OTP abstractions such as GenServer and Supervisor.
Topics include:
- Stateful processes and mailboxes
- Request–reply protocols
- Request correlation and selective receive
- Process monitoring and failure detection
- Process linking and failure propagation
- Supervision and restart strategies
- Distributed messaging, replication, and fault tolerance
The goal is to understand not only how to use OTP, but why its abstractions exist and which distributed-systems problems they solve.
Follow the series on DEV Community or explore the runnable examples in the Elixir Distributed Systems Lab.
📧 Email: pckrishnadas88@gmail.com
🐦 Twitter/X: @pckrishnadas88
💻 GitHub: pckrishnadas88
✍️ DEV Community: pckrishnadas88


