Ten year’s worth of learning about pricing (2017) - this is not a tech link. But it’s interesting none-the-less I think, for those many engineers which live next to the business side of whatever company they work for.

Matrices from a geometric perspective (2008) - switching it up to geometry. Understanding linear algebra is much easier when you have the geometric intuition.

Quick tips for fast code on the JVM (2018) - standard stuff. Define a hot path, and avoid allocations, boxing and megamorphic functions on it. Loads of examples of how things went wrong.

The art of service discovery (2015) #talk - Once a system grows past a couple of instances, service discovery becomes a thing. There’s a bunch of solutions, depending on how big your problem is (hand-coded, DNS, Consul/etc, hand-crafted). This talk covers Netflix’s custom built solution, with an overview of the architecture and some real-life challenges (mostly around what happens when service discovery is itself unavailable).

Performance engineering at MasterCard (2015) #talk - general tips about “performance engineering”. Many larger engineering organizations have specialized cross-functional roles like “testing engineer” or “security engineer”. This talk is best summarized as what a “performance engineer does”.

Scalable stream processing: a survey of Storm, Samza, Spark and Flink (2016) - another large piece from the folks at Baqend, this time focusing on various stream processing systems. These are duals/complements/replacements for batch processing systems like Hadoop/MapReduce.