Quinn Weaver DBA Fairpath, independent contractor
*****@********.*** 510-***-**** (M) Berkeley, CA US citizen
http://fairpath.com/quinn/resume/
Who I Am and Where I've Been
I am a senior software engineer with a track record of delivering robust
systems on time, on budget, and on scope.
I have broad experience: I've built web apps, web services, financial
software, TCP/IP servers, and VoIP phone systems. In a past life I was a Unix
sysadmin. I've written products in OO Perl, Java, and C++. I've used SQL
databases extensively (both DML and DDL). Lately I've specialized in web apps
and web services. I learn new technologies quickly, independently, and off
the clock.
I've succeeded in start-up, university, and corporate settings, on teams,
solo, and as team lead. I've seen numerous projects through the entire
product life cycle. I enjoy partnering with my customers, bridging the
gap between technical details and business results. I pride myself on keeping
stakeholders informed and happy, and delivering on schedule.
What I Can Do for You
I do contract work for large and small clients.
- I can build you an office phone system from scratch, using VoIP,
for significant cost savings over a PBX solution.
- I can build you an IVR (phone menu system): "press 1 for sales, 2
for support I can integrate with your database to create
sophisticated commerce, support, and CRM phone apps.
- I can build you a dynamic web site. I do the system administration,
back-end code, and Javascript, and I bring in design talent to do
the content (XHTML and CSS). I manage my own design talent, acting
as master contractor.
- I can enhance your existing systems. I excel at untangling legacy codebases;
I dive in quickly to create rigorous testing frameworks, fix bugs,
add features, document code and procedures, and upgrade infrastructure.
- I can advise you on any of the above areas, and/or consult on an ongoing
basis. I can help plan your enterprise architecture, working solo
or with your existing team. Need to start from scratch? I can get
your start-up off the ground. Need to integrate new systems into a
heterogeneous environment? I can make all the pieces fit.
Skillls Summary
Specialties Web programming
Web services
VoIP IVRs (Integrated Voice Response systems, phone menu systems)
Languages Perl: expert; fluent in object-oriented Perl (OO Perl)
SQL: expert (including DDL/database design)
Java: working knowledge
C/C++: working knowledge
Databases PostgreSQL
MySQL
SQLite
Sybase
Web frameworks Catalyst (Perl MVC framework)
Template Toolkit
HTML::Mason
Raw mod_perl
Web services REST (XML, YAML, JSON)
SOAP (SOAP::Lite, Apache Axis)
Sysadmin:
OS's Linux (Red Hat, Debian, Ubuntu)
Solaris
FreeBSD
Sysadmin:
services Apache; mod_perl
Asterisk
BIND DNS
Sendmail mail server
Postfix mail server
Mailman
NFS
NIS+
Dev tools Subversion
CVS
RCS
Monotone
Bugzilla/Issuezilla
RT
Methodologies Test-driven development (TDD), a.k.a "test first"
Object-oriented programming
Model-view-controller (MVC) programming: Catalyst
Extreme Programming (XP)
Waterfall
Natural
languages Spanish: near-native profiency (studied in Spain during college)
Selected Work Experience
Software Engineering
- Ran a company's evaluation of Catalyst (Perl MVC, similar to Ruby on Rails).
Wrote a prototype and chose libraries. Then, with two other consultants,
rewrote a legacy, profitable web site in under six months.
Skills used: Perl, Catalyst, PostgreSQL (as database architect)
- Rewrote a legacy trading system as an intranet SOAP service, using OO Perl
and SOAP::Lite. Created a regression test framework to ensure identical
results with the legacy system. Wrote client code in Java (Apache Axis) and
Perl (SOAP::Lite); resolved interoperability issues. I also built and
administered the development web server (Apache 1.3 with mod_perl).
Skills used: SOAP web services, Perl, Java, Apache/mod_perl,
regression testing
- As lead architect, designed an Apache app server using custom mod_perl
handlers.
Skills used: Apache, mod_perl, REST/XML, technical writing
- Performance-tuned a legacy mod_perl app (for CPU and memory usage).
Skills used: Apache, mod_perl, performance tuning
- Wrote a GUI visualizer for SIP (Session Initiation Protocol) transactions.
Using this tool, performed end-to-end testing, created Postscript network
diagrams, and wrote system documentation.
Skills used: Perl, Tk, understanding of VoIP protocols, technical writing
- Added audit-mandated data to an in-house security and Sarbanes-Oxley
database. The new code monitored all Sybase, Windows, Unix, and NIS+
group access, and raised exceptions for unauthorized privilege grants.
Extended a sophisticated database schema (using association tables,
dictionary tables, and other meta-relational concepts) to accommodate
these new data.
Skills used: ColdFusion, Perl, NIS+, Unix, Sybase, SQL (DML and DDL), XML
- Wrote a stand-alone REST provisioning server in C++, with client code
in Java. Client and server communicated by XML over a trivial HTTP subset,
which I implemented from scratch. Contents were VoIP provisioning data.
Skills used: C++, Java, TCP/IP server programming, HTTP, XML
- Wrote plugins and documentation for the Java smart web proxy WBI (similar
in concept to Greasemonkey, but much preceding it). Later this product
was commercialized as the core of an IBM XML transcoding engine.
Skills used: Java, technical writing
Teaching, Consulting, and Writing
- Conducted a company's evaluation of Perl Web templating solutions:
Perl ASP CPAN module, Template Toolkit, and HTML::Mason. Recommended
HTML::Mason, resulting in its adoption as the official company standard.
Skills used: Perl, technical writing
- Helped plan curriculum, write online materials, and teach courses for USAIL,
a first-of-its-kind online course for training systems administrators.
Taught lecture sessions; coached students through hands-on training.
http://www.uwsg.indiana.edu/usail/
Skills used: Unix system administration, technical writing, teaching
System Administration
- Built a Linux shop's desktops, servers, and network from 15 people at
the time I joined to over 70 when we were acquired by Cisco. Handled all
functions from building the network to purchasing hardware to administering
systems. Migrated network to new office. Hired an assistant sysadmin.
Skills used: Unix system administration (Red Hat Linux), sendmail, NFS,
DHCP, TCP/IP networking, change management, crimp tool
- Acted as a consulting/troubleshooting sysadmin for a university of
30,000 students. My team of five handled all departments and labs;
I was the Linux and Solaris specialist. Between putting out fires,
we created USAIL to empower grad students and department IT staff
to administer their own systems.
Skills used: Unix system administration (Solaris, Red Hat Linux, Slackware
Linux), NFS, NIS
Education
BA (cum laude) with majors in cognitive science and classical studies - Greek,
Indiana University, 1995-1999
Professional Activities
Presented sessions on Asterisk IVR programming at the first O'Reilly Emerging
Telephony Conference (2006) and at CodeCon (2006).
President since 2001 of San Francisco Perl Mongers (programming language
users group). Book and coordinate presentations by Perl celebrities,
authors, and local Perl luminaries.
References
Available upon request.