Background
I have over 12 years of experience building innovative and crafty software products and tools. Social software, collaboration tools, cellular network protocols, anti-spam gateways and virtual appliances, I've grown codebases and organically lead teams towards a reflective, trustful, agile practice.
Most recently, I've been working for an early stage startup as the lead developer, as well as several side projects.
Prior to these projects, I worked for five years at Socialtext as a core developer. Some of my accomplishments there are:
- Guided our globally decentralized engineering team through major transitions.
- Built an innovative and trusting dev culture through monthly open R & D "Wiki Wednesdays", agile processes and retrospectives.
- Migrated a legacy webapp codebase into modern code and real-time architecture without any major business interruptions, keeping a small memory footprint.
- Stood on the shoulders of giants to build awesome HTTP APIs, used by our team and our customers.
- Used many tools including Modern Perl, Javascript, Async Programming, Solr, Nginx, PostgreSQL, and Git.
Outside of work, I have been building software for citizens. I co-created an award winning Open Data application called VanTrash. Built on the simple idea of helping people remember garbage day, it demonstrated a model for citizen and government co-collaboration. Since then, I've co-founded a service called Recollect which gives citizens a more useful and modern interface into a civic service and enables municipalities to better communicate to it's citizens.
In between all of this, I have co-founded the Vancouver Hack Space and learned a great deal about DIY electronics and 3d printers.
Relevant Skills
I have extensive experience developing products in several areas:
- Designing, building and maintaining HTTP, Webhook, and Real-time APIs.
- Analyzing, testing and solving performance and scalability goals and problems.
- Creating actionable plans of investigation and execution, then working with teams to transparently accomplish them.
- Automating business and development processes to improve company efficiency.
I have mainly developed products using the following technologies:
- Internet - I started in Data Communications and the Internet has been a huge part of my life and career. I strongly believe in URIs, HTTP, RESTful APIs and in the open web.
- Unix - I have been working with various unixes for my entire career. I am very comfortable at the command line and with unix architectures.
- Perl - I've seen The Good, The Bad and The Ugly of Perl code. But along with CPAN, Perl has helped me build valuable tools with fast development times, good performance and low memory footprints.
- PostgreSQL - I have used PostgreSQL 7, 8 and 9 and built systems for quick and reliable schema patching, long term OLAP-style data retention, and traditional RDBMS.
- Remote Deployments - I have been involved in building several real and virtual appliances for behind-the-firewall deployment. I have deep experience designing and building deployment and update systems.
When I build products, I rely on my soft skills:
- Careful listening skills lead to deep understanding of what is being said
- Pragmatic approach to balancing customer and engineering needs
- At ease talking, presenting ideas, leading design sessions
- Open minded, creative approach to solving problems
- Speaker at OSCON, YAPC::NA, Vancouver Agile Conference, others
I have gained various levels of competence with many other technologies, such as:
- Javascript, Solr, Nginx, Python, Bash, PHP, Haskell, O'Caml, Vim, Screen, …
And I have many other irrelevant skills and can grow a mean unix beard.
Experience
Prime Radiant Inc
Lead Backend Developer - Sept 2011 to Present
- Build out server-side product functionality
- API Design
Closs Consulting LTD
Primary - June 2011 to Present
- Designed and built a web based member management and billing system for the Vancouver Biodiesel Co-op
- Designed and built a marine geo-notification system for the Wilderness Committee
Socialtext
Chief Wiki Juggler / Lead Software Developer - November 2006 to May 2011
- Worked from my home in Vancouver, BC with a globally distributed development team.
- Acted informally as Agile coach, incorporating Agile, Lean and Kanban methodologies.
- Designed and built Ubuntu based hardware and Virtual appliances.
- Built real-time APIs and highly concurrent daemons for an intranet microblogging product
- Designed and built a flexible reporting subsystem for product usage and adoption metrics.
- Created 50+ product innovations, performance improvements and other self-guided hacks during Wiki Wednesdays.
Sophos Canada
Core Developer and Agile Coach - October 2003 to October 2006
- Lead teams on many projects, including new feature development, maintenance releases, performance, and internal tools.
- Designed and re-built core unix install experience, product update mechanisms, automated testing systems.
- Taught many employees to juggle and entertained staff with weird tricks.
Telos Technology
Software Developer - June 2001 to October 2003
- Designed and developed GSM/CDMA/UMTS Wireless Softswitch in ANSI C.
- Created tools to perform automated regression and performance testing.
- Worked with Architects and Senior Engineers to analyze performance problems and refactor the entire product.
British Columbia Institute of Technology
- Computer Systems Technology - Data Communications Major (with Honours), Class of 2001
- Team Leader of BCIT's team in the ACM International Intercollegiate Programming Competition. Placed 9th out of 48 teams in Pacific NW Region.
Contact Info
I live in beautiful Vancouver, Canada.
You can reach me as @lukec on Twitter or via email - jobs at lukecloss com.