I’m pondering about software engineer salaries and efficient markets. What intrigues me is how often new software engineers are changing jobs to get significant raises 1, 2, and 3 years outside of school. I see a lot of resumes and it’s actually somewhat unusual if I don’t see a new job every ~2 years on […]
Many years ago, I read an interesting tidbit somewhere about raising capital for startups. There was a checklist of qualities that correlate with fundraising success (and ultimately startup success). The list went something like this: good team good market opportunity good traction good timing …and other bullet points of that nature. But the key takeaway […]
Recently upgraded a 16.04 Ubuntu guest (Windows 10 host) to to 18.04 and saw a massive drop in performance. The lag in the desktop environment was unbearable. This was even with the guest additions properly installed. These settings finally fixed it: System Motherboard Chipset: ICH9 Extended Features: Enable I/O APIC, Hardware Clock in UTC Time. […]
There is reassuringly steady progress in software development productivity. In only a few short years the pace of what is considered acceptable output in terms of development has changed pretty dramatically. The usual culprits are: faster hardware and networks, which lead to better programming languages, tools, and platforms, which produce better frameworks, libraries, services, and […]
I once worked a project that stored and pushed hundreds of TBs a month, and cost was an important consideration. AWS S3 is cheap-ish, until you get into multi TB and PB territory. AWS bandwidth has always been outrageously expensive. Google Cloud was cheaper, but only by some factor like “half the price of AWS.”
I’m often asked how much testing is enough. The answer is frustratingly nuanced: it depends. It depends on your downside risk; it depends on your stability requirements; it depends where in the dependency hierarchy the tested code lives. And on and on. I’ve begun to realize there’s one place where I can give simple advice […]
As I dig deeper into SQL and uncover its warts, one that I keep revisiting is this awful concept of SQL NULL. Way back when, I previously covered this in a way that was, at best simplistic, and at worst, wrong. Now that I’ve had more time to uncover all these little minefields, the best […]
Hang out around techie circles enough and you’ll eventually hear a variation of the astonished “X has how many engineers?”, where X is every notable startup and technology company ever created. For example, here are some undated (but relatively recent) ballpark numbers for product and engineering staff divisions of randomly selected companies: Instagram: 1,800 engineers […]
As an employer of software engineers, one of the most frustrating things about the hiring process is the obligatory weeding out of unqualified candidates. I understand how demoralizing it is as a junior engineer to go through dozens of job postings for experienced roles that all require years of experience. “Doesn’t anybody want to invest […]
One of the things about the software world is that things are constantly changing, and we can feel that change, but can we quantify it? I’m a big fan of Google Trends, so let’s use it to identify some (mostly arbitrary) software trends and see how they compare to our intuitions.