415.203.3881
3025 Deakin St.
Berkeley CA 94705-1948
Andrew J. Slater

Objective

To lead software developers in the San Francisco Bay Area or as part of a distributed telecommuting team.

Employment

Monkey Inferno, Inc.


Start-up incubator and holding company for: Jolitics, Zuno, Birthday Alarm, Charity: Water and Help Jess Breathe

Senior Contract Software Engineer

  • Designed and developed common infrastructure for all Monkey Inferno projects: Jolitics is a new social political debate and issue voting web application. Zuno and Birthday Alarm are electronic greeting card services. Charity: Water and Help Jess Breathe are charities.
  • Designed, configured and installed a Cassandra distributed storage clusters for Monkey Inferno data, in preparation for the petabyte scale image storage anticipated for Monkey Infero child companies.
  • Designed and developed an image web server that scales, crops and caches images on demand for Jolitics and Zuno in Python with the Tornado web server using PyCassa and Cassandra for storage.
  • Designed and developed a queue, batch job and listener event system using Python and Redis for asynchronous jobs in Jolitics and Zuno. The Redis queues fed the listeners and batch jobs. The system is used for scraping Facebook, greeting card delivery and recalculating Jolitics issue vote and member nomination pyramids.
  • Designed and developed a vote and member nomination calculation algorithm for Jolitics in Python. Members of Jolitics can vote on individual issues and nominate each other to enable proxy voting. The issue vote and nomination pyramids require constant recalculation.
  • Designed and developed an Email bounce parser and action system for Zuno and Birthday Alarm in Python. The system parses Power MTA logs and bounced mail to gather statistics about bounce and delivery rates. The system automatically re-sends email that soft bounces, removes address from our lists that hard bounce and alerts humans to MTAs that have blocked us as spam.
  • Designed and developed an international identity authentication system for Jolitics using SMS in Python in compliance with the Clickatell callback regulations for obtaining a Clickatell shortcode.
  • Designed and implemented for a cross-product MVC architecture using Python and Tornado for use with Jolitcs and Zuno. When I showed up here it was all a litle haphazard. We needed some organization and I've written many MVCs.

Inter Active Corporation, Inc.

 - Bloglines and Ask.com.
Bloglines, Today.Ask.Com & Loris Toolbar Analytics Engine

Senior Linux Software and Site Operations Engineer

Software Engineering Products:

Loris Analytics Engine - Hadoop Analytics Engine for Toolbars

  • Independantly designed and developed Loris, a usage analytics engine for Ask Partner Network toolbars as a custom replacement for Google Analalytics and various heterogeneous in-house metrics gathering and reporting projects. Loris uses Hadoop, Hive, the Tornado Web Server and is written in Python.
  • The Loris Tornado web server collects weekly analytics data from over 50 million partner toolbar installations and loads the data into Hadoop Hive tables for later analysis.
  • Designed and developed several Loris programs, in Python, to report statistics about product installation, failure, usage and user demographics with Hadoop Hive MapReduce jobs.
  • The Hadoop cluster consists of 16 machines and will be migrated to Amazon Web Services.
  • Experimented with Cassandra distrubuted keystore before choosing Hadoop.

Bloglines - Leading Feed Reader Web Application

  • Bloglines is a web application consisting of a JavaScript front end, and C and C++ CGI web server logic that talks to Berkeley Databases and a 40TB custom distributed storage cluster based on the Google File System.
  • Implemented Berkeley Database replication and automatic failover for Bloglines databases and clients.
  • Extended and maintained Berkeley Databases, a 20 node MySQL Cluster Database and our large custom built "Podserver" Google File System in C and C++.
  • Designed and developed Model View Controller logic for Bloglines Beta CGI web logic in C++ with 3 other engineers.
  • Upgraded, fixed and maintained the Bloglines web crawlers, RSS, ATOM and HTML parsers and security filters in C and C++.
  • Maintained and added features to Bloglines Classic in C and C++ with 3 other engineers.
  • Developed OpenID consumer for Bloglines authentication.
  • Designed and developed many database and cluster maintenance utilities in C++.
  • Maintained and added features to Bloglines user interface in Javascript, ClearSilver template language and HTML.
  • Wrote and maintained our SCons Python based build environment.
  • Packaged Bloglines in RPM for a non-developer operations team to install a Bloglines cluster with Yum. SPEC files built from templates with Python.
  • Integrated Phorum PHP Bulletin Board Software into Bloglines. Synchronized Bloglines BerkeleyDB and Phorum MySQL user databases.
  • Involved with many aspects of Bloglines product design, promotion, development, operations, and customer service.
  • Work via IRC and phone meetings with a geographically distributed team scattered about the US and China.

Today.Ask.Com - Start Page Web Application

  • Designed and developed modifications to the Bloglines CGIs and databases to serve as the engine for the Today.Ask.Com start page
  • Built a URL shortener service using the Today.Ask.Com infrastructure.

Site Operations: (concurrent with software engineering)

for Loris Analytics Engine, Bloglines and Today.Ask.com

  • On call 24/7 for remote operational support for the 200 machine production Bloglines cluster and the 30 machine Today.Ask.Com cluster.
  • Responded to pages for systems in error and fixed them, often requiring significant development work late into the night.
  • Planned and moved the Bloglines cluster to a new data center retaining 40TB of data with minimal downtime.
  • Planned, ordered and installed the 30 machine Today.Ask.Com cluster.
  • Performed regular upgrades and maintenance of Bloglines and ask.today.com clusters and associated software.
  • Monitored Bloglines traffic and database load to anticipate operations issues and plan capacity expansion.
  • Deployed new releases of Bloglines and today.ask.com software to the live production environment.
  • Planned for expanding hardware capacity as Bloglines grew and recommended hardware purchases.
  • Installed separate 16 machine Bloglines test cluster.
  • Installed 16 machine Loris Analytics Engine cluster.

Aldon Computer Group

Linux Product Team
Change Management Software

Senior Linux Software Engineer and Head Linux Systems Administrator

  • Developed Lifecycle Manager a software development change management system written in C++ and Java with an IBM DB2 back end as part of a six person team.
  • Ported Lifecyle Manger server from OS/400 iSeries operating system to Red Hat Enterprise Linux, Ubuntu Linux, SUSE Linux, and AIX while keeping a single code base.
  • Provided Systems Administration for all Aldon Unix based computers including Red Hat Enterprise Linux, Ubunutu Linux, Debian GNU/Linux, SUSE Linux and AIX machines.
  • Configured Samba Active Directory integration, NFS, Kwiki Wiki, Jabber IM, Postfix SMTP, and BugZilla for internal development use.
  • Acted as Linux and GNU toolchain expert for the development team and provided Linux systems programming and administration training for developers and Windows administrators.
  • Designed and developed build management tools and Lifecycle change management interface tools on Linux using Python, Bash, GNU Autoconf, Automake and Libtool.
  • Packaged products using RPM.

AVI Systems


SAN/NAS Startup

Linux Systems Software Engineer (short term contract)

  • Linux systems programming in C for storage management software.
  • Wrote a HTTPS web user interface in C for the storage management product with OpenSSL.

World Travel

Traveller

  • Explored Europe and Asia. Met many nice people. Ate many strange things.

Pitney Bowes

Document Messaging Technologies (Formerly Alysis startup, acquired)
Paperless B2B Billing.

Software Engineer

  • Designed and developed Java HTTP Model View Controller for D3 Advantage, a scalable distributed electronic B2B bill presentment and payment system for WebLogic and Oracle on Solaris and Windows (Before Struts was mature). The MVC included an XML API to control Enterprise Java Beans logic and a customizable interface via XSL Transforms.
  • Developed Java XML processor Servlets for scripting control of D3 Advantage J2EE server beans.
  • Developed J2EE Enterprise Java Beans for financial logic processing in the D3 Advantage server
  • Developed XSLT templates to transform internal financial data to industry standard B2B XML for automated clients or XHTML and CSS for humans.
  • Contributed to the Apache Jakarta project by adding SSL proxy features and fixing bugs for the JMeter network application stress testing program.
  • Performed performance tests and analysis on D3 Advantage Server using JMeter and Python. Redesigned server code to optimize performance under different load levels.
  • Tested modules with JUnit.
  • Wrote system logging and debugging module with Log4J.
  • Left position to travel.

BARCO

Graphics
CAD/CAM

Lead Software Engineer

  • Lead a four person design and development project to create WebCenter, a Java database server with platform independent Web/ASP, C++, and command-line launched clients on Linux and Windows.
  • Developed GUI and database modules in C++ for ArtiosCAD carton and box design software, as part of a ten person software development team.
  • Assisted with improvement of company software development process, including: Source control deployment, specification requirements, adoption of UML documentation practices, and modularity and layering of existing monolithic software.
  • Tested modules with JUnit and Python.

Software Emancipation Technologies

(Since aquired by Mortice Kern Systems)
Source Code Analysis

Contract Software Engineer

  • Worked on a three person team to test and debug Discover, a software architect source code analysis, and information modeling tool.
  • Assisted with the design of the Discover Java parser and syntax tree modeler.
  • Wrote test applications in C, C++ and Python on Linux and Solaris.
  • Wrote automated regression tests using Python and Bash.

Contracts (while in school)

Cyber Access Internet Communications


Internet Service Provider

Software Engineer

  • Reverse engineered and wrote extensions for UTA, an Internet Service Provider billing program on UNIX in C.
  • Automated monthly billing for Cyber Access with the Expect scripting language.

ViaTech


CAD Tools

Software Engineer

  • Used C++ to develop GUI and graphical modules for GTView, Ford Motor Company CAD/CAM viewing software as part of a five person software engineering team.
  • Assisted with research, design and development of piracy protection software in C.
  • Installed, and maintained software and hardware on UNIX and PC machines.

The MITRE Corporation


Military Communications

Software Engineer

  • Designed and developed a C++ GUI interface for TATTLJ, a US Air Force inter-service branch protocol translator, client/server target tracking and display system as part of a three person software development team.
  • Granted Secret clearance.

Data General


Unix Clustering

Network Administrator / Hardware QA

  • Installed and Administrated Data General UNIX Clusters and Windows NT Servers on Symmetric Multi-Processor systems for hardware QA group
  • Wrote, executed, and analyzed suites of fault insertion tests on these systems in C.

Elkay Products


Plastics Fabrication

Software Engineer / Network Administrator

  • Redesigned and implemented transaction processing applications for company intranet.
  • Built and administered company network of UNIX and Windows machines.

Education

Northeastern University

 College of Computer Science

Bachelor of Science in Computer Science

  • Five year program. Classes interspersed with contract positions listed above.

Computing Skills

Languages: , , , , , , , , , , , , ,
Software: , , , , , , , , , , , , , , , , , , ,, , .
Operating Systems: , , ,
Hardware: Have built from scratch and administered a wide range of UNIX, Macintosh and Windows systems and networks.

Personal Projects

aj.slater.net


Small web server
  • Administer an Ubuntu GNU/Linux Internet server that used to provide secure shell, web, mail, instant messenger and Usenet news service for friends and family.
  • ...before they all switched to Google Applications.
  • Now aj.slater.net just runs a personal web site for experimentation and keeping abreast of current technology and security issues.

Interests and Hobbies

Enjoy World Travel, Muay Thai Kickboxing, Argentine Tango, Hiking, Motorcycles, Weightlifting and Go.