I am Kevin McDonald

Senior Software Engineer

Based in Copenhagen

This is my CV

About Me

Hi, I'm Kevin. I am a passionate programmer who likes to solve tough problems. As a person who understands the value of different perspectives, I enjoy working on teams to collaborate on difficult problems. I am a friendly, direct problem solver that consistently dives deep and wide into new technology and topics.

  • Name: Kevin McDonald
  • Job: Senior Software Engineer
  • Citizenship: USA
  • Residence: Denmark
  • E-mail: kevin@sudorandom.com
Experience & Education
2021 - present
Software Engineer - Vital Beats
  • I worked on the Vital Beats platform, which assists in treating patients with implanted heart devices.
  • Technology includes Elixir, Python, PostgreSQL, Kubernetes, RabbitMQ, data science tooling in python (numpy, pandas, matplotlib, etc.), terraform and AWS.
2016 - 2021
Software Engineer - Apple, Inc.
  • Worked with Apple network engineers to create highly scalable and redundant tooling and services to track, model, monitor, and configure critical network devices. This tooling improved visibility into the operation of Apple's global backbone network which serves hundreds of millions of users.
  • Advocated and educated other teams about open standards, like OpenConfig, within Apple and to several of Apple's vendors.
  • Programmed primarily in Clojure and Go. Technologies used: TL1, NETCONF, gRPC, gNMI, YANG, OpenConfig, SNMP, LLDP, BGP, om.next, Datomic, Zookeeper, Cassandra, Kafka. Interoperated with Juniper/Arista/Nokia/Cisco/etc. switches and routers.
2011 - 2016
Senior Software Engineer - SoftLayer, an IBM Company
  • Maintained several backend systems that collect, store and process large amounts of time series data.}
  • Created and maintained SoftLayer’s open source projects including the python language bindings for SoftLayer’s API (softlayer-python)
  • and an SFTP/FTP frontend for SoftLayer’s object storage product (swftp). I have also contributed upstream patches to open source projects like OpenStack.}
  • Built a network poller in Go which supported SNMP, TCP, ICMP, HTTP and DNS which was able to handle hundreds of thousands of targets
  • with a single instance.}
  • Produced holistic evaluations of SoftLayer’s virtual server, object storage and internal metric system which resulted in a large
  • amount of actionable data for operations and future product design. Due to the success of the project, this approach towards data collection and visualization was emulated in other areas of the company.}
  • Programmed primarily in Python, Java, Go, PHP. Technologies used: HBase, Cassandra, InfluxDB, Oracle, RabbitMQ, Kafka, Ansible, Chef,
  • Graphite, Grafana, Splunk, Xenserver, SNMP and OpenStack Ceilometer.}
2010 - 2011
Senior Application Developer - Distribion Inc.
  • Positioned in a support role: Debugging time-sensitive problems, solving customer issues, database management, release management. This position required usage of PHP, JavaScript, PostgreSQL, mySQL, git, subversion and an assortment of domain-specific tooling
2006 - 2011
University of Texas at Dallas
Dallas, Texas, USA

I attained a Bachelor of Sciences in Computer Science. Notable classes were 'Computer Graphics', 'Game Design', 'Object Oriented Programming'

Programming Languages
  • Go
  • Elixir
  • Clojure
  • Python
  • Java
  • PHP
  • JavaScript
  • Ruby
  • Bash
  • git
  • Linux
  • Docker
  • Kubernetes
  • Cassandra
  • Datomic
  • PostgreSQL
  • mySQL
  • HBase
  • Oracle
  • Zookeeper
  • Kafka
  • RabbitMQ
  • om.next
  • React
  • Prometheus
  • SSH
  • gRPC
  • gNMI
  • YANG
  • OpenConfig
  • SNMP
  • TL1
  • eAPI
  • ICMP
  • DNS
  • HTTP2
  • GraphQL