Development

  • Python

    My primary programming language. All the additions the community has made over the years; including async, typing, and dataclasses; have only made the core library stronger. Not to mention, they have the best third-party packages. Extra love for the Pydantic ecosystem. I love and hate the M1 chip, mostly because of you Tensorflow.

  • Data

    I'm partial to the open source community, and my team uses the Delta Lake ecosystem with Kafka, Spark, Delta, Trino, etc. You can power real-time, analytics, and machine learning applications with this infrastructure. Create a single source of truth for an entire organization, through data.

  • Models

    Physics, statistics, machine learning, deep learning. Every approach has its place when you're tackling a problem. Some of the more fun approaches I've taken are combining physics models with deep learning. In the physical sciences, we're often limited by the size of our dataset, so why not use physics to generate realistic data for training?

  • Web

    I've learned a bunch of new things building this site with Next JS. In the stack, Javascript has come the most naturally for me, and I'm leaning heavily on Tailwind for CSS styling. I'm far more comfortable with the backend, building Rest APIs and writing complex logic.

Operations

  • CI/CD

    Github actions is your friend. Your best friend. Automate testing and deployment, so you and your team can focus on the application you're building. If you don't have these pipelines setup, you and your customers are going to have a bad time.

  • Helm

    Every developer should be able to deploy their application code. Simple templates can enable your team to quickly deploy new services, and eliminate any bottlenecks that might come up from having a central team that manages deployments.

  • Terraform

    Moving beyond the console can go a long way towards making project environements replicatable for testing purposes. I'm not an expert in this configuration language, but I know enough to be dangerous. What infra do you think is serving this experience?

Management

  • Projects

    I love Jira. It's helpful for defining who does what when. Start with agile sprints when you can't predict the future well. You can grow this into a waterfall view of the major projects and milestones that your team can achieve in a given quarter or year.

  • People

    I think the most important piece of the puzzle is to be a good person. Do you empathise with what your people want and who they aspire to be? If you do, you'll find the ways in which their goals align with the goals of the business.