3 ms·
I think there's also a large gap for people who only have a CS education and those with a traditional engineering background. Traditional engineering skills ar
by busterarm 7y ago
I think there's also a large gap for people who only have a CS education and those with a traditional engineering background.
Traditional engineering skills are very undervalued in this industry and I've met very few "engineers" in this field who understand engineering basics like control systems. IMO that's very valuable for building the systems we build -- I can't tell you how many half-baked implementations of some of the parts of PID I've seen kicking around.
And I say that as a completely self-taught, college dropout senior developer.
- jedberg 7y agoI think you have a good point. With today's complex distributed systems, control theory should really be emphasized more. I didn't learn it in school, but I definitely studied it when I started being responsible for the uptime of complex systems!
- busterarm 7y agoNot going to lie, it's somewhat validating reading a +1 on this from you. It's usually one of my more unpopular opinions and I work in ops.
- jedberg 7y agoI mean my personal take on it is that if you don't have a most basic understanding of control theory, you won't understand what your monitoring system is telling you nor will you know how to programmatically react to it. In fact, I have a perfect counter example. At reddit, to even out load on our databases, we built a system that would take into account current load on the database when choosing which read slave to select. As it turns out, this doesn't work well, because you overwhelm the slave with the lowest load because the the reaction time is too slow compared to the request time. We had to tweak it to account for this. Had we known control theory, we would not have made this mistake. On the other hand, that mistake didn't cause us that much damage and we were able to devise a solution that ended up being right. :)