Dan Collins, chief architect of PEAK6 Capital Management and self-described “tech enthusiast” knows what great systems look like, and how to build and scale them. “You need to be close to the problems teams are solving to see opportunities for you to guide and catalyze,” says Dan, who joined PEAK6 in 2019 from Uptake Technologies. A key contributor to the PEAK6 Engineering blog, Dan recognizes the importance of telling the stories of the systems—celebrating what has worked; reflecting on what hasn’t; and documenting, documenting, documenting. Here’s Dan in his own words:
As chief architect, I partner with engineering leads and technical teams to continue building out our architecture and engineering best practices across the firm. I’m an expert engineer, but I focus on the macro structure and integration across everything we’re building. When there are big changes or investments we want to make, I work with our teams to figure out what tradeoffs we’re comfortable with and whether we’re driving in a sustainable direction for the long term.
I was always interested in computers—they had the draw of almost magical, hidden knowledge. My grandfather had an IBM PS/1 he turned on a few times a year to balance his accounts when I was young. It was very ritualized. He’d make a pot of coffee and load up Lotus 123 and we’d wait as the computer chugged along. I was fascinated, and quickly was hooked on the idea that you could write instructions in English words and turn them into something that’s living and doing its own thing. When the web became a thing, I just kept with it.
Best technology moment(s):
I love building and operating evolvable systems that scale and growing new engineers that have this as part of their foundation. At Uptake, I focused on horizontal scaling in the cloud. At PEAK6, there’s more sensitivity to latency in decision support because of the financial markets. We scale vertically more than we do horizontally and it’s really cool. Partnering with teams that understand this is very satisfying.
One of the biggest things I advocate for is living documentation—creating documentation that lives alongside the code, checked into source control, and can be built and integrated as you develop the system. The documentation piece too often gets put aside or lost in prioritization. Since joining PEAK6, I started CapDocs as a centralized documentation system for engineers. We document everything from high-level architecture to system design—architecturally significant decisions, system coupling, and higher-level strategies around cloud adoption, environment strategy, data archival, testing, etc.
Early in my career I worked on a small consulting team and we were launching a portfolio modeling and investment analysis integration for a large client. As we got close to launch, my colleague and I came to understand that they mistakenly thought we were a much larger team than we were. There were only two of us, while the client had around 30 people on the launch status call. As we started their final deployment, the coordinator was asking each team to confirm they were ready to go: ‘Systems, are you ready to go?’, ‘Networking, are you ready to go?’, etc. Except that each team they called out on our side, time and again, was just the two of us speaking up. Despite the humor of the situation, we launched without issue and got feedback that it was ultimately one of the client’s most successful integrations.
When I’m not working:
Like a lot of engineers, I like to program and play with different languages. I read a lot—especially computer history, fiction, and some child development and parenting books. It’s helpful to take a break and consider different ideas. I also like to do projects around the house, building things away from the computer. It gives me perspective and keeps me grounded.
Tech for the greater good:
I’ve done a few nonprofit websites. In college, I did one for an orphanage in Africa. More recently, my wife started an organization called FAM Chicago that connects parents raising kids with severe food allergies, and I was happy to build their website.
Best part of my job:
The best part is working with lots of smart people on really interesting systems, and solving hard problems that are continually evolving. Being able to work alongside engineers who’ve been building and running these systems, succeeding together, and alleviating the burden so the load is more spread out, is amazing and I’m grateful to be a part of it.