Zero to Hero Weekly | Issue 23 — Interview Done. Radio Silence 🎃 What Now?

Radio silence after a job interview can be a painful feeling. But it doesn’t always mean rejection.

You wait… then wait some more. (generated by Midjourney)

Welcome to the 23rd issue of Zero to Hero Weekly.

My schedule had been a total trainwreck for the last few months, and I couldn’t find much time to show ❤️ to Zero to Hero weekly highlights.

Starting from this one, I’m planning to change this 🙂.

👩‍🍳 Tiny Updates Here and There

If you are a frequent visitor, you might have realized some minor design changes here and there. More of those are coming, and I’m also creating a mini video about my overall design process.

After all, Zero to Hero is one of the central places I create content, and no matter how hectic my life is, it deserves attention and care.

Turtle Power 🐢⚡️

If you are interested in federating identities across multiple clusters and using mutual transport layer security over gRPC to let workloads talk between those clusters. First of all, you have weird interests 🙂. And secondly, I have a series of ten videos over forty-five minutes that you can enjoy using SPIRE to Securely Connect Workloads.

SPIFFE, SPIRE, Ninja Turtles 🐢🐢🐢
SPIFFE, SPIRE, Ninja Turtles 🐢🐢🐢

In the series, as usual, I assume nothing and begin with a blank slate, coding everything from scratch and creating a brand-new project. On the videos’ web page, you can also get the source code and find many relevant links and articles to dive further.

Distributed Systems Are Grinches

Well, I thought of something else instead of a “grinch”, but I’m so very polite, and I’m not going to say that thing.

This is from Evan Gilman on SPIFFE Slack Channel. Evan is also the author of Zero Trust Networks. So, when he talks about Distributed Systems, you can assume he knows what he’s talking about (content edited for brevity and clarity):

Here are a few things that come to mind when you want to use a remote database such as Google Cloud Spanner as the backing store of a distributed system that requires strong consistency (such as SPIRE):

Tight consistency will always require some number of round trips with some quorum of nodes to commit changes and move forward. And, there will always be an upper limit applied to how fast this system can progress: The latency or round trip time between participants is a crucial factor.

Given (increased) latency, the system will naturally hit a performance wall. This can be (sometimes disastrously) exacerbated by the “Internet weather”.

Operational Overhead
Some systems require synchronization periods when starting new or restarting existing nodes. During these periods, bulk transfer of data occurs.

Cross-region pipes or commodity Internet is usually (comparatively) lower throughput. So, depending on how much data you’re talking about, it can induce significant amounts of overhead on the wire and wait time during operations for the cluster to stabilize following some event.

There will be similar concerns about time-to-recover from a restore (i.e., make sure your restore data is close by)

Exotic Failure Modes
Nost distributed systems aren’t written, and don’t get tested, for use across high latency lossy links. Lots of weird things can happen across these links, which tend to have at least a couple middle boxes:

– TCP sessions that get held open but nobody is there,
– High jitter on one link in the system that is traversing a really busy router,
– And many more…

Persistence systems—particularly those requiring consensus—like to fall over when these things happen.

And many times, bugs are uncovered because nobody ever tried it before.

For the record, here is an article that Evan wrote about exactly one of these cases.

Why did I share it? Because I didn’t want it to be lost in Slack archives. And dear Slack: show some ❤️ to open source communities. Not many of them have the funds to secure a paid plan.

Interview Done. Radio Silence. What Now?

Radio silence after a job interview can be a painful feeling. But it doesn’t always mean rejection.

Especially in large companies, the hiring teams might take a very long time to deliberate, discuss potential candidates, and decide on the candidate to extend an offer. It can take an equal amount of time to come up with an official offer latter obtaining all the required approvals.

To better understand what’s holding up the process, ask questions and listen carefully. In this process—like it or not—your recruiter is your ally. So ask them (or whoever the facilitator of the process is) questions similar to these:

This post is for paying subscribers only

Already have an account? Sign in.
  \\\,^,.,,.                    “Zero to Hero”
  ,;7~((\))`;;,,               <>
  ,(@') ;)`))\;;',    stay up to date, be curious: learn
   )  . ),((  ))\;,
  /;`,,/7),)) )) )\,,
 (& )`   (,((,((;( ))\,

Subscribe to Zero to Hero

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.