- Supported the front-end team by building a suite of front-end performance automation tests written using Grunt, PhantomJS and YSlow, to track front-end metrics and degradation of performance as part of the CI tasks.
- Developed a template engine, based on HandleBars and ExpressJS, used to preview and compile HTML newsletters.
- Built a proxy-cache command line application built to abstract front-end development from the Rails back-end by selectively caching or proxying the HTTP requests.
- Technical Project Lead (contractor)R/GA2013 - 2013
Technologies: Grunt, PHP, Twitter Bootstrap, Jenkins, Amazon EC2
- Led the technical development of front-end templates for the main website of Turkey's leading mobile phone operator.
- Responsible for leading the distributed development team, support the London production team with estimates and scope definition, establish communication with the client, and ensure that quality standards were met. The team was made up of four front-end developers and a tester, organized using a Kanban board and FogBugz tasks. The templates were assembled using PHP 5.4 partials, built and verified via Grunt 0.4 tasks, and published on a Jenkins CI server hosted on Amazon EC2.
- Introduced Python unit tests in the team using unittests and nose.
- Contributed to the addition of BDD tests for the back-end API using Python Behave.
- Introduced the team to continuous integration practices and tools (Jenkins).
- Extended internationalization functionalities using pyBabel and gettext.
- Hands-on Technical Lead / Senior Web DeveloperSky (Sky UK Limited)2010 - 2012
Technologies: PHP, Ruby, Sinatra, Git, Subversion, Node.js, WebSockets, Backbone.js, Symfony, HTML5, Sencha Touch, PhoneGap, jQuery, PHPUnit, Cucumber, RSpec, Google Maps API, Zend
- I worked for Sky in the Sales And Services department for about two years and a half, starting as a PHP contractor and ending as a Hands-on Tech Lead. I was part of a Scrum team of (on average) 5 developers and 3 testers.
- Developed clean, mantainable object-oriented code following conventions, MVC pattern, clear separation of concerns, SOLID principles and Domain Driven development.
- Wrote mantainable tests to support development, including unit tests (PHPUnit, RSpec, qunit), functional tests (Lime, Cucumber, jBehave) and performance tests (Apache Benchmark, jMeter).
- Contributed in upgrading the architecture of legacy products and helped shaping new ones, following and supporting the overall department vision.
- Helped improving team productivity and morale. My team became a successull, recognized and awarded team.
- Inspired developers and testers to learn new skills, organizing brown bags sessions, setting-up a technical library and encouraging prototyping cutting-edge technologies.
- Helped re-organizing team practices towards a common sense of ownership, productivity and customer satisfaction.
- Mentored junior (asssociate) developers, even outside of the team as part of Sky's Software Engineering Academy for graduates.
- Collaborated in hiring developers and testers, screening CVs, leading interviews, helping organizing structured assessment days for the whole department and writing coding tests.
- Web DeveloperTheTeam, Ltd.2009 - 2010
- Worked on different projects, in small dev teams or solo, successfully collaborating with designers and user-experience architects.
- Coded high-standard web pages using semantic and validating XHTML/CSS, font-replacement systems, CSS3 through progressive enhancement (Modernizr), jQuery, and jQuery UI.
- Freelance Web DeveloperMaverick2006 - 2009
Technologies: PHP, WordPress, Drupal, Hoomla, TypoLight, jQuery, MooTools, Facebook API, Twitter API
- Projected, designed, and developed goal-oriented web-sites with a particular focus on usability and Web Standards, focusing on websites (more than 30) for no-profit and tourism companies, using open source technologies, Web 2.0 resources, and user generated content.
- Worked on all the different aspects of building a website, giving me a great overview of the process and invaluable experience and, more importantly, teaching me how to budget and estimate, how to plan and meet deadlines, and ultimately how to be a pragmatic and effective developer and deliver on a promise.
- Gained extensive experience with a wide variety of technologies.
- Software DeveloperAirvent SAM S.p.a2003 - 2004
- Coded the server-side data access of the main company product in Java, XML and XSLT, using Java RMI.
- Projected and realized software in Visual Basic 6 to turn a PC into a hotel internet-point with smart-card activation.
- Designed the company's main website.