2 ms·
> I have always known at least one or two people who are great developers but they don’t want to know anything about operating systems, sockets, file descriptor
by sgarland 3y ago
> I have always known at least one or two people who are great developers but they don’t want to know anything about operating systems, sockets, file descriptors, service level objectives and all that
IMO, those are not great developers. If you know nothing about how your code is running at a low level, you will reach a point at some scale where you’ve caused performance issues, and don’t have the fundamental knowledge necessary to fix it. Skilled or good, sure, but “great” implies mastery.
> I’m very much in the, “you wrote it, you run it,” camp.
As a sibling comment of mine pointed out, these are generally orthogonal skillsets. The main problem I’ve seen with it is that due to the relative ease of XaaS, dev teams with little to know knowledge of infra can indeed stand up an entire stack, and it will work quite well at first.
Databases, for example, are remarkably fast at small scale, even when your schema is horrible and your queries are sub-optimal. But if you don’t know the fundamentals (my first point), you won’t know that it’s abnormal for a modern RDBMS to take hundreds of milliseconds for a well-written query (assuming it’s not a cold read). You see that your latency is “good enough,” so you move on with the next task.
Then, when the service gets more popular, you hit the limits of the DB, so you vertically scale (if it isn’t already “Serverless” and auto-scaling – barf). It isn’t until the bill is astronomical that someone will bother to ask why it is you need a $10K/month DB.