You Need to Know Networking

Knowing a bit about networking will pay dividends in your software engineering career. I’ve seen many engineers write off problems their service is having during incidents as “a networking problem” without much thought as to what their service is actually doing. I’ve been in meetings where a senior engineer has said “I don’t want to have to learn networking to be able to call other services.” I’ve had arguments with teams whose design decisions overload load balancers, waking me up at off hours for issues that I could do nothing about. What I thought was “obvious” about how computers communicate with each other hardly is for many folks. And that’s okay.

Read More

Don’t Dunk on Languages

The perennial internet discourse like “Nobody should use Java in ${CURRENT_YEAR}” and “We re-wrote everything in Rust” is an interesting one. At the end of the day, it’s a pointless discussion and harkens back to the editor wars for the quality of discourse and progress made.

Read More

HTTPS For Mortals

HTTPS, specifically the underlying SSL/TLS, is important to protect the privacy and security of internet users, yet can be opaque when it fails.

Read More