Technical Skills

February 7th, 2006

I’m a black belt coder, hacker and specialist in developing web based applications.

My weapon of choice is the open-source free software methodology following an agile development approach.

I speak various dialects of Linux (Debian, RedHat, Solaris, FreeBSD) and am right at home building and administering secure, robust, scalable, highly reliable 24/7 UNIX based web architectures.

Programming Languages

My programming language of choice for web applications is PHP (flickr, wikipedia, facebook anyone?) sometimes with a bit of PERL, PYTHON or Shell scripting thrown into the mix. For heavy lifting and multithreaded performance c/c++ using libraries like boost complete the picture.

I learnt Object Orrientated programming in JAVA and have commercial experience working with the J2EE toolset.

When coding i aim to write concise reusable and well documented components and scripts and well organised maintainable larger programmes that play well with others.

I have over 6 years commercial experience as a web applications programmer and have been coding since an early age writing games like Frogger on an 8bit computer.

Web Application Stuff

In terms of web application frameworks I’ve written my own MVC framework and have also used Struts, Spring and Symfony along with the associated technologies like hibernate, velocity etc. I like to leverage stuff like the components in the Zend Framework. Probably the coolest framework i’ve worked with recently is Ruby on Rails which certainly puts the Rapid back into Rapid Application Development.

Databases

I have extensive and deep experience working with a variety of RDBMS solutions. My favourite database for medium weight web apps is PostgresSQL for its speed, power and stability. I’ve several years experience working with Oracle (8i,9i,10g) on distrubuted enterprise class systems. I can write, optimise, debug and tune complex SQL statements and have programmed highly complex stored procedures for financial systems in PL/SQL and JAVA. I’ve worked on a movie post production scheduling system built on a complex Sybase ASE 12.5 rig including extensive Transact-SQL programming. I’ve also designed, built and deployed a 20 server distributed MYSQL Cluster utilising storing 14million records in RAM and serving them up at 8k req/second with a maximum request time of 40ms. There were a bunch of beta bugs we found along the way which demanded understanding the c++ internals and making contributions to the MYSQL codebase.
Front End

In terms of front end presentation stuff i’m at home writing various standards of accessible HTML, XHTML, scripting AJAX interfaces and DOM manipulation. I consider Javascript to be a neat language - the fact that its still going string after 6years speaks well of its design. I like the prototype/scriptaculous library for ajax and UI stuff and yahoo’s yui library also has some neat stuff.
Methodology

Where possible i like to follow an agile, test driven methodology utilising full unit test harness (Junit, PHPunit) and automated build process.