Experience
-
– Procore
Senior Software Engineer
-
Senior Software Engineer
Maintain a React Native app for generating models from photos of a house. My day-to-day focuses on maintaining and improving the DX of the codebase: upgrading dependencies, maintaining our CI pipelines and working on shaping the high-level architecture of the app to make testing and maintenance easier.
-
– CJ Affiliate (a subsidiary of Publicis Groupe)
Senior Software Engineer
Maintained key systems for CJ’s affiliate marketing clients, developing features that led to key clients renewing contracts worth approximately 10% of our revenue:
First, CJ’s situational commissioning solution, enabling our clients to optimize their affiliate spend by targeting classes of users more precisely. (Scala, Oracle)
Second, CJ’s Insights platform, a real-time analytics platform for our clients, enabling them to analyze a variety of metrics according to an arbitrary set of dimensions. (Kafka, Elastisearch, ClickHouse, Clojure)
-
– Summe LLC
Software Engineer
Worked to produce a theme for an e-commerce site (Apache, Drupal, Sass) and implemented a set of deployment scripts to facilitate deployment to Amazon's cloud services (EC2, RDS, S3). implemented and themed a new e-commerce platform (Nginx, Symfony2, Sass). Work on AtomAMPD's AtomOS router operating system.
-
– , NCMI, Baylor College of Medicine, Houston, TX
Python Programmer
Helped to Design and implement a web front end to EMEN2, a custom document-oriented database (Twisted, Mako Templates, Berkeley DB). Implemented Berkeley DB transactional storage for EMEN2.
-
– , Desktop Assistance, L.P., Houston, TX
IT Assistant
Assisted software development team in deploying enterprise software on Linux: installed and configured Linux desktops and servers; configured networking and remote access; installed and configured development tools, relational databases (Firebird), HTTP servers (Apache), and other enterprise software; solved software build problems (compiling Firebird UDFs on Linux; compiling Delphi applications in Kylix and FreePascal); and wrote Python scripts for maintenance.
Personal Projects
-
https://github.com/fiddlerwoaroof/aion
An ICS parser and a protocol to incrementally process an ICS calendar.
-
https://github.com/fiddlerwoaroof/cl-git
A mostly-complete implementation of parsers for git objects.
-
https://github.com/fiddlerwoaroof/objc-lisp-bridge
A bridge between Common Lisp and the Objective-C runtime. Mostly used so I can develop macOS automations in CL rather than AppleScript.
-
https://github.com/cjdev/routedux
A library for abstracting away the URL routing concerns from the view-layer of your page.
-
https://github.com/cjdev/aws-access
A utility that makes it easier to switch between AWS accounts using the STS assume-role workflow.
-
http://git.fiddlerwoaroof.com/u/edwlan/alimenta-feed-archive.git/
A program to run inside a cronjob for updating a list of feeds. Uses my alimenta library for wrangling the RSS and a simple VueJS frontend for displaying them.
-
http://git.fiddlerwoaroof.com/u/edwlan/alimenta.git/
A Common Lisp library for parsing feeds. It defines a protocol for accessing feeds as well as implementations for Atom and RSS feeds.
-
http://git.fiddlerwoaroof.com/u/edwlan/timesheet.git/
A Common Lisp application for time tracking with the ability to post hours worked to Freshbooks.
-
A LispWorks CAPI application for browsing Hacker News
-
http://git.fiddlerwoaroof.com/jsonrpc.git/
A Python implementation of the JSON-RPC 2.0 specification for the Twisted framework.