Availablity
I am not currently looking for a new position and my schedule is too tight to allow for freelance work.
Objective
A senior Rails development position in an open source environment, employing agile methodologies and today's leading robust technologies. Work with fun, smart and opinionated people on interesting problems in a flexible and casual environment, ideally located in a cool city.
Summary of Qualifications
I am a senior-level developer with over seven years experience delivering web-based applications that real people depend on. I have experience writing and maintaining robust applications with large data sets, massively complex data relationships, and high user volume.
I am a passionate craftsman with a focus on the coding practices that produce dependable, scalable, and maintainable applications. I care about elegance in architecture, clean and clear APIs, simplicity in design -- that is to say, beautiful code. While I have a history in LAMP applications, I am currently working primarily in Rails and would like to continue to do so.
Languages
- Ruby
- PHP
- Perl
- SQL
- C
- Bash Shell Scripting
- HTML / XHTML / CSS / Javascript
Other Technologies
- Linux
- Apache
- Subversion / CVS
- HTML::Mason
- Ruby on Rails
- Smarty
Practices
- Agile Methodologies
- Test / Behavior Driven Development
- Standards compliance
Professional Experience
- Sr. Software Developer
- January 2006 - October 2007
- Bitscribe.net
- Burbank, CA
Bitscribe provides process consulting and custom software development services using open source technologies and agile methodologies. While at Bitscribe I have worked on dozens of enterprise applications, in many cases being involved in the design of the core architecture and serving as technical lead.
- Work with development on applications with massively complex data relationships, high volume data needs and both internal and public-facing sites using primarily Ruby on Rails, PHP, MySQL, and PostgreSQL.
- Model the domain and processes of the client. Design a solution that not only meets the stated needs of the client, but creatively addresses process complexities, inefficiencies, and expose obfuscations.
- Refactor legacy systems to implement modern methodologies and technologies. Examples of refactoring include: gradually restructuring an existing legacy database schema to take advantage of such concepts as primary keys and foreign key relationships; gradually transitioning complex applications from procedural PHP to an Object Oriented MVC framework; and transitioning PHP applications to Ruby on Rails.
- Abstracted out code common to all projects into a reusable library serving as a framework for all our PHP projects.
-
Served as technical lead where my responsibilities include:
- Ensure code integrity: enforce style and naming conventions, clean and obvious APIs, smooth and easy project setup and deployment, and general good coding practices.
- Provide domain expertise: help developers new to the project to enter a complex domain, provide technical information to project managers when necessary, assist in the quoting process.
- Polish and progress: keep an eye on the big picture, research new technologies that might improve the project, implement new processes to improve the smoothness and efficiency of working on the project.
- Software Developer
- June 2004 - January 2006
- Oversee.net
- Los Angeles, CA
Oversee.net specializes in online advertisement through domain parking landing pages, lead generation, and search-based ads. At my time there, I was involved in development on projects including internal applications, public high-traffic sites, and many of the complex back-end algorithms responsible for parsing and interpreting massive amounts of data.
- Maintained and expanded web based internal and client applications that manage the complex system for serving ads for products such as Revenue.net and Domainsponsor.com. Software was maintained in CVS and developed primarily using Perl, HTML::Mason, and mySQL with some PHP.
- Developed consumer blogging software from the ground up using Perl, HTML::Mason, and mySQL. Worked with team to develop and adhere to internal coding standards and other processes including wiki based project documentation, unit testing, and the QA process. Utilized Subversion for version control. Worked with creative team to ensure adherence to XHTML / CSS standards.
- Software Engineer
- October 2002 - June 2004
- TrustCommerce
- Pasadena, CA
TrustCommerce provides payment gateway services to companies ranging from small online stores to large chains using the service for each of the POS devices in branches across the country. Additionally, they use their expertise in the complexities of credit card processing, security and technology to provide consulting and design services for their clients commerce needs. For most of my time there, I was the primary developer for their consulting services.
- Worked directly with clients to determine the ideal solution for their needs. Composed proposals and design specifications for said solution.
- Developed and maintained software on a variety of projects, ranging from short term e-commerce solutions to long term, large scale utilities that clients used to manage their businesses.
- Maintained business relationships with clients to ensure their satisfaction and confidence in TrustCommerce. Communicated with clients to resolve delicate issues and ensure client trust.
- Some examples of projects include:
- Warehouse management software used for tracking of inventory, written using PostgreSQL, PHP, and C.
- Web-based utilities that allow merchants to track and maintain order fulfillment using PostgreSQL, and PHP.
- Custom modifications to their existing shopping carts using Perl and PHP.
- Static website design using HTML, CSS, and Javascript.
- Web-based utilities to give the clients' customers access to current shipping and receiving information, using PHP and PostgreSQL.
- Utilized CVS for version control on all projects.
- Independent Consultant
- February 2000 - October 2002
- Worked directly with high-profile clients such as Body By Jake, Chuck Jones, Lawman Armor, and Bring It Up to develop complete e-commerce websites in Perl, using GDBM data storage. Designed all HTML in some cases, while working with web designers to integrate content in other cases.