LeetCode made building boring

LeetCode made building boring

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.


Good engineers are never scared to compete

Most good engineers I met were highly competitive but in a good way. When they saw a better code, they absorbed it and used the pattern the next time in their code. When they heard someone talking about an interesting algorithm, they looked that up to understand it in detail.

Most people consider it jealousy, but this is a fuel that helps them get better than others. In most cases, they needed worthy opponents who pushed themselves beyond their limits and ensured that they not just met the bar but raised it entirely.

I have been fortunate to have some of them as my direct reports, and I had to ensure that they understand that competitive spirit is not about tearing down others, instead, it is about pushing yourself above them.

So, next time you see someone doing better than you, writing better code, learning something interesting, or working hard, take it as an external push to become better than them.

Make competition your constant drive to be better.

Also, remember a → b ≠ ~a → ~b

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


?? Video I posted this week

This week I posted How PostgreSQL parses the query and constructs the Parse Tree?

Spent some time this week going through the source code of PostgreSQL to understand its query parser. I compiled my learnings in a video along with a code walkthrough covering interesting internal details about what happens when a Postgres server receives a SQL query from the client, and how it parses the query to create the parse tree.


?? Paper I read this week

This week I spent reading Take Out the TraChe: Maximizing (Tra)nsactional Ca(che) Hit Rate

This weekend I am reading a paper that reimagined caching for transactional systems. The paper introduces a new metric - transactional hit rate - a measure of how effectively the cache reduces latency for entire transactions.

Their approach, DeToX, outperforms traditional methods even on real-world workloads and they do this by leveraging transactional dependencies to make smarter decisions about what to cache and evict.

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


LeetCode made building boring

Why most engineers today are not thrilled by building something ground up, like their databases, programming languages, game engines, etc?

Leaving aside people who are not interested (at all), I see people starting the projects, but giving up pretty soon as they hit their first roadblock. Remember, we can build anything if we persevere enough, but why are we not doing it then?

Building something takes consistent time and effort over a long period. But because we are getting wired with quick rewards, there is no fun in struggling and building.

Don't get me wrong, doing LeetCode-like questions is fun and has its perks, like, you do become great at problem-solving, writing efficient code, and using the right data structure and algorithms to solve a problem, but the quick feedback loop is kind of messing up with us.

Spending hours building something ground up is fun. Spending hours looking at a massive codebase to understand what that one piece of function is doing is fun. Spending hours building that one thing you always wanted to do is fun.

Once you are done with enough LeetCode, look beyond those 80/100 lines of code snippets and experience the joy of building something from the ground up. The struggle is real but worth it.

ps: I have built my database (dice - redis re-implementation in Go) and a programming language (Revine - visual language for kids). It took me 3-4 months each to build them, but the learnings I got were immense and something that made me a better engineer.

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 Emprendimiento y Empresarial | Direccionamiento y Planeación Estratégica | Estructuración Organizacional | Administración y Gestión Productiva | Gestión de Costos y Presupuestos | Planes de Negocio |

10 个月

Un interesante enfoque planteado en este artículo, con la descripción de un excelente aspecto de gran relevancia para seguir creciendo y avanzando en cualquiera sea su campo o disciplina de desempe?o. El estar en autoevaluación y búsqueda continúa de retos consigo mismo, con base a su cualificación y competencias planteándoselas en paralelo en su desempe?o y así estar superándose en nuevos proyectos y planteamientos. Vivir en esta permanente alerta a nuevos retos hará que este en continuo crecimiento, mejoramiento, fortalecimiento y pulimiento personal.?

回复
Aditya Soni

Data | Software & Machine Learning Engineering | Kaggle Competitions Master

10 个月

Wow! This block-: > Most people consider it jealousy, but this is a fuel that helps them get better than others. In most cases, they needed worthy opponents who pushed themselves beyond their limits and ensured that they not just met the bar but raised it entirely

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

Arpit Bhayani的更多文章

  • 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…

    7 条评论
  • 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 条评论
  • Not everything needs to be dumbed down

    Not everything needs to be dumbed down

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

    11 条评论
  • The best resource does not exist.

    The best resource does not exist.

    This edition of the newsletter contains two quick write-ups about The best resource is mythical Convergent Encryption I…

    4 条评论
  • It's not about what you know, but about how you think

    It's not about what you know, but about how you think

    This edition of the newsletter contains two quick write-ups about It's not about what you know, but about how you think…

    1 条评论

社区洞察

其他会员也浏览了