Hi
I'm Nick! I'm a software engineer that likes building infrastructure.
About Me
I've worked at:
- Datadog as a senior engineer building and supporting internal search infrastructure.
- GitHub as a senior engineer building infrastructure automation and tooling.
- Wildbit on Postmark, an API-driven product that's the best way to send transactional email. I was a team lead and full-stack engineer focused on scaling and reliability, writing code in C# and Ruby and operating MySQL, Elasticsearch, and RabbitMQ.
- Relay Network, a startup changing the way people communicate with business. I was an engineer writing code in Clojure.
- Algorithmics a fintech company in the collateral/risk management space which was bought by IBM. I was an engineer writing an ASP.NET web app interacting with a SOAP backend.
- DVRPC a regional planning organization. I was a web developer building JS applications.
Personal Projects
Representative
This is a simple page that compares how many people each representative in a country represents.
Elasticsearch settings code analysis
I explored analyzing the Elasticsearch codebase to find all of the configurable setting values to put them all in one place. Code to generate the list is found in the elasticsearch-bblfsh repo.
Places
I made a JS map thing that lets you search for a place name and see where it (and other similar names) are located in the US. I like finding the outliers. Like Beach, North Dakota.
Revere Chrome extension
I had a problem of following different provider's status pages for updates when they post issues. This Chrome extension periodically checks RSS feeds and pops a notification when it detects a new entry to alert you.
External Writing
-
Vulcanizer: a library for operating Elasticsearch
-
Tools we use: Curator for Elasticsearch
-
Introducing full DMARC support with custom Return-Path domains
-
We’re doubling down on Elasticsearch!
-
Getting bounces is now (about) 7 times faster
-
Review of partial outage on 2014-04-28
-
Better bounce categorization in Postmark
-
Build a CSV of bounced emails using the Postmark API
-
Using Chef on Windows is easier than you think
Public Speaking
-
Bash <3's CSVs: Data Analysis on the cmdline
-
Command line-first data analysis
-
The Modern Email Experience
This talk went over all the features that an email service provider can provide to your webapp for minimal implementation on your part. Receiving emails, bounce handling, and tracking are powerful components to build a full featured email experience for your application.
-
What developers should know about email
This talk goes into detail on how emails are built up and sent out. Among other things, I covered how MX records work, what the raw format of an email is, and how anti-spoofing measures SPF, DKIM, and DMARC work together.
-
A dev+ops view of Elasticsearch
This is a talk I gave with a fellow engineer giving an ops point of view demoing how easy it is to build out an Elasticsearch cluster.
-
How Postmark Uses Elasticsearch
This is a talk I gave with a fellow engineer how Postmark built out our Elasticsearch cluster and how we store and query events.
-
Vagrant: Virtualize your dev environment
Redsnake Philly is an annual meeting of the Python and Ruby user groups. This talk was about Vagrant, a command line utility written in Ruby that basically creates a DSL on top of VirtualBox and Puppet/Chef. The power of this is that it allows you to source control the environments that your application needs to run.
-
Make maps the FLOSS way, with Mapnik!
The topic of this talk was the open source mapping utility Mapnik. Written in C++, but with first-class Python bindings, it is a great example of the power available to the Python community. Open data releases by both the public and private sector have been on the rise, but the tools needed to work with this data are improving at a slower pace. With geographic data, commercial software from ESRI is, far and away, the standard. However, this does not need to be the case. In this talk, I gave several examples using Mapnik and open government data to create my open static images of maps and web-based "slippy" maps.
-
DSLs in F#
This talk went over the basics of F# syntax, the pros and cons of using DSLs and why F# is a good language to build a DSL in.
Personal Writing
-
Changing defaults are hard
-
Elasticsearch crash course
-
Captioned gifs with ffmpeg
-
Data analysis first aid on the command line
-
Dot - part of the command line toolbox
-
Helping with man page muscle memory
-
Missing logs?!? Learning about linux logging systems
-
Fight cognitive biases when debugging, but here's that one time the problem really was on the other server
-
Rails, timezones, and existentialism
-
Calling Erlang code from Elixir: a tale of hubris, strings, and how to read the documentation
subscribe via RSS
Contact Me
Feel free to contact me at: [email protected]