SysAdmin

  • Linux
  • Virtualisation
  • Apache / Nginx
  • MySQL / MongoDB

Back End

  • PHP
  • Perl
  • REST
  • Ecommerce

Front End

  • HTML
  • CSS
  • htmx
  • Alpine
  • Javascript
  • Photoshop

Professional experience

Freelance

Clients from UK, Europe, USA

Barcelona

2005-10 – present

  • Alpine
  • AngularJS
  • Apache
  • API consumption
  • Bash
  • CSS
  • Debian
  • Ecommerce
  • Git
  • Go
  • HTML
  • htmx
  • Javascript
  • JQuery
  • Linux
  • MongoDB
  • MySQL
  • Nginx
  • Perl scripting
  • PHP
  • Proxmox
  • REST API design
  • SCSS
  • Shell scripting
  • Subversion
  • System administration
  • Virtualisation
  • VMWare
  • Web application design

Since I made the move to be completely freelance, I’ve worked with clients from USA, UK, Spain and other countries. The services I’ve provided have included everything from system administration to design.

Front-end development has involved everything from templating systems for my own applications, to working alongside Ruby and Java developers remotely. I’ll sometimes use a framework like Bootstrap, sometimes writing or customising the theme, but mostly I prefer to keep the client-side as light as possible.

I’ve designed web applications using various PHP frameworks. Most current work is based on the Fat-Free Framework, which I find is a very nice balance between leaving design decisions up to the developer and providing a sufficiently useful base to work from. Some of these applications are based on communicating with multiple APIs. Some of the applications I’ve developed or worked on are themselves REST APIs.

In addition to PHP applications, I’ve developed AngularJS applications for smooth content management. Other JavaScript work involves using build setups and dependency management systems including Bower, Grunt, npm, Yarn and Webpack. With respect to build systems, I’ve settled on using the backend to build both the CSS and Javascript with server-side caching to reduce the load and speed. This removes any compilation from the development environment.

On the server-side, I extensively use bash or Perl scripts to automate tasks or transform incoming data, whether it’s XML, JSON, CSV, or to consume remote APIs to populate databases. Usually I work with MongoDB for most of my database needs. I have plenty of experience with MySQL (and MariaDB), but usually work with it only in existing or legacy applications. This might be utilities I created before I began using Mongo, or 3rd-party or open source applications like Wordpress, which I have installed and managed for clients on various occasions (although the latter is best managed with wp-cli.)

More recently I’ve started building utilities in Go as well as porting some of the existing utils in the library, mainly for performance purposes. I’m also in the process of rebuilding a couple of main internal ReST APIs in Go, again largely for performance reasons.

Up until relatively recently many of the servers I’ve worked with were dedicated machines with virtualisation – Proxmox or VMWare – to allow for addition and customisation of hosts for specific tasks.

In the last couple of years, however, I’ve increasingly moved to working with cloud providers for even more agility and flexibility, and generally all new projects are built on cloud instances.

Obviously, it goes without saying, I think, that I work constantly with Git for version control. I switched over from Subversion around 2009.

VP Technology

Polyphonic HMI

Sant Cugat

2002-10 – 2003-10

  • AI
  • Apache
  • API consumption
  • Bash
  • CSS
  • Javascript
  • Linux
  • MySQL
  • Perl scripting
  • PHP
  • Shell scripting
  • Subversion
  • System administration
  • XHTML

Polyphonic created algorithms for music analysis and classification. Based on artificial intelligence, commonalities in music are recognised from a spread of parameters, which was then used for various tasks, such as playlist creation. Another application of the technology was to assist in prediction of possible commercial success of new music.

Technical Director

Yahecho

Barcelona

2001-08 – 2002-10

  • Apache
  • Bash
  • CSS
  • Javascript
  • Linux
  • MySQL
  • Perl scripting
  • PHP
  • Shell scripting
  • Subversion
  • System administration
  • Web application design
  • XHTML

I set up Yahecho with a colleague as an outsourcing company and web consultancy.

Technical Team Leader

Good Technology

Barcelona

1999-10 – 2001-08

  • Bash
  • CSS
  • Ecommerce
  • HTML
  • Javascript
  • JSP
  • Linux
  • MySQL
  • Oracle
  • Perl scripting
  • Shell scripting
  • Zeus

I was asked to set up a branch of Good Technology in Barcelona, to better service their client Chupa Chups as well as explore new business locally.

Technical Manager

iCrunch.com

London

1999-07 – 1999-10

  • Apache
  • Bash
  • CSS
  • Ecommerce
  • HTML
  • Javascript
  • Linux
  • mod_perl
  • MySQL
  • Perl scripting
  • Shell scripting
  • Web application design

iCrunch (starting as crunch.co.uk) was the first online shop for MP3 music in Europe. My role was to get the site running, listing the inventory and linking up the ecommerce.

Telematics Consultant

WS Atkins

Manchester

1998-10 – 1999-07

  • Apache
  • Bash
  • Linux
  • Perl scripting
  • Shell scripting

My tasks at WS Atkins included anything related to internet, such as setting up and running Apache hosts.

Programmer

AutoTrader

Warrington

1998-08 – 1998-10

  • Apache
  • Bash
  • IIS
  • Linux
  • MS SQL
  • MySQL
  • Perl scripting
  • Shell scripting
  • Solaris

I worked with AutoTrader on contract to bring Perl and Linux experience - their team was exclusively Windows-based at the time. Much of my work here was creating "glue" scripts to transform data and link up different systems.

Technical Director

Doctor Net

Manchester

1997-07 – 1998-08

  • Apache
  • Bash
  • CSS
  • DHTML
  • Ecommerce
  • FreeBSD
  • Javascript
  • Linux
  • MySQL
  • Perl scripting
  • Perl/CGI
  • Shell scripting
  • System administration

I joined Doctor Net as the company was launched with the task of dealing with all production aspects.

Web Designer

Good Technology

London

1996-07 – 1997-07

  • Apache
  • Bash
  • CSS
  • DHTML
  • Ecommerce
  • Flash
  • Javascript
  • Linux
  • Perl scripting
  • Perl/CGI
  • PHP
  • RealMedia
  • Solaris

I started at Good Technology in Ladbroke Grove working with large clients like Mini, EMI and other brands. My main task was front-end development and design. At the time, of course, front-end development mostly was design!

Web Builder

The British Council

Manchester

1996-06 – 1996-07

  • Apache
  • DHTML
  • Perl/CGI
  • Solaris

I had previously worked at the British Council in various temporary work contracts. When the Manchester office was put in charge of setting up the worldwide online presence, I was contacted to help them with the web building part of this task. In the process I assisted with the configuration of the on-premises web server, a Sun box with the then-new Apache HTTPd 1.0.

Academic experience

Video, Imaging and Communication Technology

Salford University

1993-10 – 1996-06

  • C Programming
  • Filmmaking
  • Multimedia
  • Recording studio techniques
  • Sound recording
  • Video editing
  • VR

This degree course was started in 1993 to provide a grounding in the emerging area of virtual reality. Subjects of study included both the hardware and the software involved in VR, telepresence, augmented reality and more. This was also when I first had hands-on experience of Unix and C.

Professional Audio Systems

Salford University

1989-09 – 1991-06

  • Acoustics
  • Filmmaking
  • Recording studio techniques
  • Sound recording
  • Video editing

This National Diploma course was based heavily around studio recording, along with a deeper look at everything from the electronics of audio systems to acoustics theory. Alongside the audio and music, video production was included.