4 ms·
Behind the scenes, this has been a big boon for CDNs, my work is powering Amazon, and it is interestingly derived from work from Netflix on FreeBSD TCP. Togeth
by kev009 8y ago
Behind the scenes, this has been a big boon for CDNs, my work is powering Amazon, and it is interestingly derived from work from Netflix on FreeBSD TCP. Together we are making TCP work much better on these largely wireless networks.
- throwbacktictac 8y agoCan you elaborate on what you do?
- ta45663344 8y agoManages, so he takes credit for work done by intelligent people.
- kev009 8y ago:) there are a lot of awful managers in tech, I tried hard not to be one of them. A good first level manager in my opinion should remain a strong individual contributor to the team. It's important to have prudent knowledge of the system and continuously develop your decision making basis. On top of this, a good manager should be directly recruiting and hiring talent (i.e. talent agencies and recrutiers are not good ways to build a team). And you should finally and most importantly be an advocate for the individuals on your team (compensation, basic empathy around life events etc) and the output of the team (vendors, other teams, etc will eventually try to undercut you knowingly or not. If the work is meaningful, and you are doing well, you must generate positive news about it). Done well, it's not an easy job.
- Waterluvian 8y agoI know just networking basics so when I hear that someone's improving TCP I'm instantly captured. I need to know more. I had no idea you could improve TCP. I thought it was a fixed entity, for better or worse.
- kev009 8y agoMost of what I'm doing is systems engineering. Incorporating research and code from others. Reporting and occasionally fixing bugs. The research in this case is primarily coming from Google. Linux has the state of the art TCP stack at the moment, but for various reasons (http://www.bsdnow.tv/episodes/2018_04_11-bowling_in_the_limelight http://www.bsdnow.tv/episodes/2018_04_11-bowling_in_the_lime...) we run FreeBSD. So the other part is re-implementing things on that. I am individual contributor on the main body of our code, I directly recruited and hired my team, and sought out and set up contracts to get features like TCP Fast Open done (with some particular twists that make sense for our workload). In an industrial setting, it is both competent and desirable for most companies to be in this kind of engineering mode (application of existing technology). I'll give this simple example as a call to action. Schedulers of any kind, say the one that puts threads on to CPUs, are open-ended problems. If you co-design a system with hardware and software, it is highly likely you can get a 20% speedup in a system by manually emplacing different workloads (i.e. NIC interrupt handlers, application threads). In TCP, this same kind of thing applies. If you run Linux, there are a lot of things in the Documentation/ directory of the kernel that are worth reading and tuning. Selecting a congestion control, and tuning buffer sizes is very much "working on TCP" and could benefit any company using TCP. It's also something anyone with a few years of general development experience shouldn't feel intimidated to do! The most critical skill isn't any particular technology but learning to measure and confidently make and deploy changes. Likewise, there are very few things on computers that can't be improved. This can range from tuning general settings to a particular workload or change of underlying hardware, to algorithmic advances.