There’s no syllabus, explore what excites you

There’s no syllabus, explore what excites you

Being hands-on is the best way for you to learn. Practice interesting programming challenges like building your own BitTorrent client, Redis, DNS server, and even SQLite from scratch on CodeCrafters.

Sign up, and become a better engineer.


There’s no syllabus, explore what excites you

Throughout our life, we have been conditioned to find a syllabus and stick to it. Going out of the track is either discouraged or while doing it our peers and parents always said is a waste of time and effort. This continues even when you are working.

Whenever I talk about the internals of databases, or interesting algorithms, or an obscure domain from computer science, I always get the comment "Shut up! we don't need this at work."

We tend to focus on things we need at work or to crack some interviews and nothing beyond that. Even a slight detour seems like a waste of time. Unfortunately, this mindset is killing your curiosity and making you boring.

Be curious, tinker with things, and give yourself a chance to stumble upon the unexpected. The domain of computer science is vast and beautiful; there are so many things you will genuinely fall in love with.

Do not limit yourself to someone else's curation; explore what excites you.

You can find this post on my LinkedIn and Twitter; do leave a like.


?? Video I posted this week

This week I posted How nested loop, hash, and merge joins work.

Joins are essential for relational databases and they not only power transactional queries but are also used in analytical workloads. But how do databases join the two tables?

In this video, we go in-depth to understand the different algorithms that databases use when they join two tables. By the way, these algorithms are not just limited to databases, but even distributed computation frameworks like Apache Spark use them when they need to join the two datasets. So, let's jump in


?? Paper I read this week

This week I spent reading Amazon MemoryDB: A fast and durable memory-first cloud database

The paper describes the architecture of MemoryDB and how they leverage Redis and offer 11 9s of durability with in-memory performance ?? pretty impressive.

It spills the details about how they provide single-digit millisecond write and microsecond-scale read latencies, strong consistency, and high availability while being fully compatible with Redis.

You can download this and other papers I recommend from my papershelf.


100% test coverage does not mean your system is stable

I once saw a FAANG codebase with 100% test coverage but the system was still broken.

Many big companies obsess over unit tests and most of them chase the vanity metric of test coverage as an indicator of system stability. The obsession with hitting that 100% coverage mark leads to engineers wasting countless hours writing trivial test cases.

I am not saying, to not write tests at all. Tests are essential and you need to write the ones that matter, the tests that catch regressions, the tests that ensure the core functionality remains intact, and the tests that keep the system stable.

I prefer writing integration tests because they ensure that my system is stable from the outside and that the required user flows are working fine. I do write unit tests, but only for critical business logic and complex internal flows and edge cases.

Five pieces of code that I write unit and integration tests for are

  1. for functionality that directly impacts the user experience
  2. for the system's core business logic
  3. for code that gets invoked frequently
  4. for code that handles sensitive data
  5. for code that changes frequently

So, when you write the next set of tests ask yourself, your lead, and your manager the tough question - "why?"

You can find this post on my LinkedIn and Twitter; do leave a like.


?? Interesting articles I read this week

I read a few engineering blogs almost every single day, and here are the three articles I would recommend you to read.


Thank you so much for reading this edition of the newsletter ?? If you found it interesting, you will also love my courses

  1. System Design Course for Beginners
  2. System Design Course for Experienced Engineers
  3. Redis Internals Course


I keep sharing no fluff stuff across my socials, so, if you resonate do give me a follow on Twitter, LinkedIn, YouTube, GitHub.

William Caro Bautista

Consultor | Empresarial y en el Emprendimiento | Planeación Estratégica y Direccionamiento | Estructuración Organizacional | Administración y Gestión | Productividad | Gestión Costos y Presupuestos | Planes de Negocio |

11 个月

Interesante planteamiento el compartido en este artículo, romper y salir de los esquemas establecidos, pensar, analizar, construir y seguir rumbos que rompan el molde. Algo que para la mayoría de los tradicionalistas y estructurados pensadores no es el rumbo, pero cuando una persona seda la oportunidad de salir de el y cambiar de rumbo, construir sobre esquemas no tradicionales, ser creativo y plantear y definir nuevas alternativas, hace de su vida algo distinto y posiblemente enriquecedor, motivante, constructivo y de crecimiento en todos sus roles y escenarios. Por ello este planteamiento hace reflexionarse en seguir avanzando igual o, romper el rumbo e iniciar a construir el que sea propio y único, personal, individual que presente y visualice mi yo, solo mi yo y logre ser distinto.?

回复
Emeric Tabakhoff

Remote Database performance and HA expert for Postgres & MySQL | I help your company scale to thousands of users ?? keep existing users ?? & protect their data ??? #Postgres #PostgreSQL #MariaDB #MySQL #DBA #Freelance

11 个月

wow, no syllabus? explore what excites you. 100% test coverage ≠ system stability. #nofluff Arpit Bhayani

Sanket Singh ↗?

Backend Developer | Node JS Developer | TypeScript Developer

11 个月

The title had me hooked ??

Ashis Padhi

SRE | Devops | Automation & CI/CD Enthusiast | Driving Efficiency & Reliability for Distributed Systems

11 个月

Thats exactly what i have been doing now a days. Cause i realised that just reading or solving a fixed set of problems or a particular topic, gets repetetive and boring fast. And most importantly thats making the “curious me” happy.

回复

要查看或添加评论,请登录

Arpit Bhayani的更多文章

  • The Ideal End To An Ideal Career

    The Ideal End To An Ideal Career

    This edition of the newsletter contains one quick write-up that will help you grow faster in your career a video I…

    6 条评论
  • How to Find and Ride the Next Tech Wave

    How to Find and Ride the Next Tech Wave

    This edition of the newsletter contains one quick write-up that will help you grow faster in your career a video I…

    6 条评论
  • Engineer or Manager? How to Decide Your Path

    Engineer or Manager? How to Decide Your Path

    This edition of the newsletter contains one quick write-up that will help you grow faster in your career a video I…

    7 条评论
  • One Career Bet Worth Taking

    One Career Bet Worth Taking

    This edition of the newsletter contains one quick write-up that will help you grow faster in your career a video I…

    5 条评论
  • Leave your job with grace and gratitude

    Leave your job with grace and gratitude

    This edition of the newsletter contains one quick write-up that will help you grow faster in your career a video I…

    7 条评论
  • Turn Boring Projects into Opportunities

    Turn Boring Projects into Opportunities

    This edition of the newsletter contains one quick write-up that will help you grow faster in your career a video I…

    1 条评论
  • When is the right time to switch?

    When is the right time to switch?

    This edition of the newsletter contains one quick write-up that will help you grow faster in your career a video I…

    8 条评论
  • Ramping up faster in your new job

    Ramping up faster in your new job

    This edition of the newsletter contains one quick write-up that will help you grow faster in your career a video I…

    4 条评论
  • Back Your Disagreement with Data

    Back Your Disagreement with Data

    This edition of the newsletter contains one quick write-up that will help you grow faster in your career a video I…

    2 条评论
  • Doubt yourself every day

    Doubt yourself every day

    This edition of the newsletter contains one quick write-up that will help you grow faster in your career a video I…

    9 条评论

社区洞察

其他会员也浏览了