Michael Hamrah

I am a software engineer successful at designing and building scalable, distributed systems leveraging agile principles. My focus is on API design, event-driven, asynchronous programming and data modeling and storage. I program primarily with Scala and Go, and work on scalable application platforms using Mesos, CoreOS, and Docker.
I am proficient in several programming languages, focusing on Scala and Go, with a long history of Ruby, Javascript and others. I apply a test-driven approach to development, incorporating design and architectural patterns to build highly maintainable systems. My experience includes object-orientated and functional programming along with exploitation of VMs, runtimes and frameworks. My current work leverages Scala and the Akka framework to build event-driven systems running on public and private clouds. Some of this work is highlighted in a NYC Tech talk I gave in April, 2014. Link below.
I have extensive knowledge of web-based systems across all levels of the software stack deployed to public and private clouds. This includes HTTP and TCP fundamentals; networking protocols and data serialization; queue-based systems (RabbitMq, SQS); search servers (Solr, ElasticSearch); several aspects of AWS including fault-tolerance, auto-scaling and continuous build-and-deploy techniques; extensive use of Docker; cluster computing with Apache Mesos and Akka; load-balancing/proxy setups with HAProxy, NGINX, and Varnish; data analysis with Spark; and both SQL (PostgreSql, SQL Server) and NoSql (Redis, Cassandra) databases. My career has been focused on leveraging these tools to build optimized, fault-tolerant systems that work under load at a global scale.

Expert Skills

DevOps & SysAdmin

Scala

Expert Reviews

No reviews. Yet!

Posts

April 28th 2015

Learning Ruby on Rails from C# and ASP.NET

One of the things I&#39;ve been doing lately is digging into Ruby on Rails. I&#39;ve always wanted to learn Rails since I was first exposed to Rails at an AjaxWorld conference in &#39;06 (at least, I think in 06). David Heinemeier Hansson actually presented!
Alas, I never could devote enough time...(read more)