Profile

I'm an experienced software engineer who likes to work in the intersection of large-scale data processing systems, functional programming, and automation.

I've spent the last few years working in the domains of text analytics, large-scale data processing, and container orchestration.

My goal is to tackle complex and interesting problems in challenging, creative, and intellectually stimulating environments with a strong engineering culture.

Relevant Work Experience

  • Argo AI Munich, Germany

    Building self-driving technology you can trust.

    Senior Software Engineer

    March 2020 - present

  • Mesosphere (now D2iQ) Hamburg, Germany

    Software for data centers based on Apache Mesos and Kubernetes.

    Senior Software Engineer and Tech Lead

    November 2017 - January 2020

    • Led the effort for planning and building our officially supported Cassandra Operator, a strategic deliverable for the company's new Kubernetes offerings.
    • Contributed and added new capabilities to Mesosphere's official DC/OS Data Services: Elasticsearch, Cassandra, Kafka and Spark.
    • Led the Data Services initiative for large-scale mixed-workload deployments on clusters exceeding 12000 cores. This became a routine procedure that uncovered countless ways in which DC/OS components like Apache Mesos, networking and storage needed improvement, ultimately increasing stability and correctness across the board, providing confidence that Mesosphere's biggest customers could run their comprehensive workloads on our platform.
    • Worked on Mesosphere's declarative approach to building production-grade stateful services, which out-of-the-box provides multi-region and multi-zone deployment support, overlay networking, metrics, dashboards, persistent volumes, rolling upgrades, TLS communications and allows operators to get a complex stateful service deployment running with just one command.
    • Interviewed candidates and mentored engineers. Built tooling that allowed not only newcomers, but whole teams to be more productive.
  • Sonian, Inc. Waltham, MA, United States (remote)

    Hosted email analytics, archiving and discovery.

    Senior Software Engineer

    September 2014 - September 2017

    • Took advantage of business, engineering and research knowledge acquired during the year before to move POCs to a production setting.
    • Architected and built distributed batch processing systems and HTTP APIs with Clojure, Component, Zookeeper, RabbitMQ, PostgreSQL and Redis.
    • Researched, benchmarked and implemented different approaches to topic extraction, trend detection and text segmentation for email bodies.
    • Successfully used bleeding edge Elasticsearch aggregations, mapping configurations and cluster topologies to get complex real-time analytics queries returning in milliseconds.
    • Implemented distributed data pipelines for email data cleaning, parsing and analysis using open-source tools like StanfordNLP.
    • Automated infrastructure and deployments with Ansible, Chef, Docker and Jenkins.

    R&D Consultant

    August 2013 - September 2014

    • Conceptualized and created the interactive visualizations that kickstarted Sonian's move towards email analytics, allowing customers to extract insights from their massive amounts of data. The frontend was built with React, mori and D3, and the backend with JRuby, Rails, PostgreSQL, Elasticsearch and Redis.
    • Designed and implemented data pipelines for cleaning, enriching and deriving additional types of information from email message data using proprietary algorithms, statistical methods like tf-idf and tools such as StanfordNLP and Maui.
  • Meleva Campinas, São Paulo, Brazil

    Taxi-sharing service.

    Co-founder

    April 2012 - July 2013

    • Developed real-time location-aware mobile web applications using PhoneGap, Backbone.js and jQuery Mobile on the frontend and Sinatra, Node.js, WebSocket and MongoDB on the backend.
    • Got into the Startup Chile program, which financed Meleva for six months with 40.000 USD equity-free seed capital.
    • Constructed algorithms for optimally matching users in coherent sets according to their itinerary data.
    • Planned and executed a marketing campaign that brought in five thousand users in a single state, in one month, before launch.
    • Built an unobtrusive caching adapter for AJAX requests using Local Storage, greatly reducing bandwidth usage, database load and client load times.
    • Built user-facing prototypes in time spans as short as one day.
  • Fonista Campinas, São Paulo, Brazil

    Mobile application for calling local businesses that deliver goods, through social recommendations and user-curated information.

    Co-founder

    July 2011 - April 2012

    • Maintained infrastructure using Chef.
    • Developed websites using Ruby on Rails, Backbone.js and jQuery Mobile.
    • Designed RESTful JSON APIs for native mobile applications.
    • Built a proxy analytics server using Sinatra and MongoDB.
  • Sonian, Inc. Needham, MA, United States (remote)

    Hosted email archiving and discovery.

    Software Engineer

    February 2010 - July 2011

    • Wrote a Ruby client for Elasticsearch.
    • Wrote an admin interface for RabbitMQ clusters.
    • Implemented new features and optimized existing ones from backends to UI, using test-driven techniques.
  • Department of Computing at UFSCar São Carlos, São Paulo, Brazil

    Undergraduate Researcher

    March 2009 - July 2009

    • Implemented TCP Adaptive Westwood on a Linux kernel.
    • Used performance analysis tools to compare throughput versus packet-loss between several TCP algorithms.
    • Demonstrated the effectiveness of the TCP-CCP protocol regarding stable data flow through profiling client-server media streams.
  • Freelancer

    Freelancer

    May 2008 - December 2008

    Developed, designed and deployed Ruby on Rails applications.

Contact Information

Programming Languages

I'm most proficient with Clojure, Rust, Python, JavaScript, C, and Bash.

At work I'm currently writing Rust, Python, and Bash. On my spare time I'm currently working on projects in TypeScript, C#, Rust, and Clojure.

I can and have written code in several other languages, like SQL, Haskell, Emacs Lisp, Ruby, Erlang, PureScript, Prolog, Scala, Perl, MATLAB, R.

On my day to day I generally use Clojure or Rust for anything more than small scripts, which I write in Python or Bash.

Technologies And Tools

  • Kubernetes, Apache Mesos
  • Elasticsearch, Apache Cassandra, PostgreSQL, MongoDB, Redis, Apache Zookeeper, Apache Spark
  • AWS, Terraform, Ansible, Docker
  • GNU Make, GDB, gnuplot, Git
  • React, D3, webpack, Node, Canvas, WebSocket
  • LaTeX, web markup and styling languages
  • GNU Emacs, Vim

Recent Self Education

Formal Education

UFSCar

São Carlos, São Paulo, Brazil

B.Sc. in Computer Science

2007 - 2011 (halted)

Natural Languages

Native Portuguese and fluent English speaker. I get by with German and Spanish.

Hobbies and Interests

Powerlifting, philosophy, Emacs, cycling, playing guitar, social psychology, guitar pedals, apocalyptic thrillers, doom/stoner/sludge/drone, progressive metal, jazz and IDM.

Availability

I am not actively seeking employment at this time, however feel free to contact me if you have any inquiries.

Selected Personal Projects

TwitterAnalytics

Bootstrapped an analytics product for brands on Twitter, currently in private beta. It's backed by a distributed batch processing and a distributed real-time stream processing system for tweets. It uses machine learning and natural language processing techniques to extract valuable insights.

werld-client-browser

Created an MMORPG that runs on graphical web browsers, using Node.js, Redis, Backbone.js and HTML5 technologies such as Canvas and WebSocket. (WIP)

tty-solitaire

Created a klondike solitaire game using Ncurses and C.

werld-server and werld-client-tty

Created a multiplayer roguelike game with a chat system. The backend uses Erlang and a TCP server with which the TTY client, made using C, Ncurses and select(2), communicates with using an ad-hoc binary protocol. The backend also has a web interface for managing player accounts made with webmachine and mnesia.

battle-arena

Created a multiplayer online battle arena (similar to DotA) game using Clojure and Unity. (WIP)

macbook-playbook

Automated the preparation of a Macbook for development and desktop tasks using Ansible.

noronha

Built a distribured key-value store in Rust. (WIP)

embratel and bell

Created embratel, a library for parsing phone bills from a brazilian telecommunications company called Embratel into Ruby data structures, and bell, a command-line program that generates multi-user expense reports for Embratel's phone bills.