David Smith, Software Developer in Flitton, United Kingdom
David Smith

Software Developer in Flitton, United Kingdom

Member since June 18, 2017
David has been working as a professional Software Engineer for over a decade, with a focus on PHP. He has developed production software, configured infrastructure to run highly available systems, and architected applications from scratch. As a result, he is a well rounded engineer. David has superb communication skills and has the ability to speak in terms his audience understands - an often underestimated trait of a Software Engineer.
David is now available for hire

Portfolio

Experience

  • PHP, 12 years
  • MySQL, 11 years
  • JavaScript, 11 years
  • SQL, 10 years
  • Laravel, 4 years
  • Python, 2 years
  • Vue.js, 2 years
  • Docker, 2 years

Location

Flitton, United Kingdom

Availability

Part-time

Preferred Environment

Linux, Git, Docker, PHP Storm IDE, Sublime

The most amazing...

...thing I've coded is a distributed workflow orchestration system, using graph databases and containerization.

Employment

  • Senior Software Engineer

    2015 - PRESENT
    RetailMeNot UK
    • Created and maintained a tool using PHP7 for orchestrating the flow of data between production and reporting data stores.
    • Wrote and monitored ETL jobs in PHP7 and Python, moving millions of rows of data each day.
    • Created real-time streams of user activity data to be used for reporting and personalizing on-site experiences using AWS Kinesis and Kinesis Analytics.
    • Transitioned a user/merchant affinity algorithm on a Spark-based EMR cluster in AWS to production-ready status.
    • Led the data engineering team; a team of three software engineers.
    • Modeled data for storage in the company's data warehouse hosted on AWS Redshift.
    • Created a database user management and authorization system using Flask (Python) as a REST server and a Vue.js front-end.
    Technologies: PHP7, Laravel, Python, Docker, Vue.js, MySQL, AWS Redshift, Rabbit MQ, AWS Kinesis, Terraform, Ansible, Flask
  • PHP Engineer (Contractor)

    2014 - 2015
    Aurora Commerce
    • Implemented an event-based workflow system in the company's flagship eCommerce platform.
    • Optimized caching strategies using Memcached and Varnish with edge side included for improved performance.
    • Worked directly with the company's clients to gather requirements, estimate costs, and generate a quote for work.
    • Implemented dashboard reporting, allowing store owners to compare data over date ranges in the same type of service that Google Analytics provides.
    • Helped optimize MySQL queries to improve stability and performance of the client systems during peak hours.
    Technologies: PHP, Varnish, Memached, NGINX
  • PHP Engineer (Contractor)

    2013 - 2013
    Affiliate Window
    • Refactored existing code architecture for the company's directories of publishers to vastly improve maintainability of this section of the codebase.
    • Introduced Elasticsearch as a search technology, replacing the MySQL solution. Improved indexing and retrieval times by several orders of magnitude.
    • Integrated with Zanox (Affiliate Window's parent company) via REST and SOAP APIs to provide UK and EU users seamless access to each other's markets.
    • Wrote extensive end to end tests around the new directory architecture using Behat.
    • Contributed to the team generating recommendations for users based on previous behaviors using Mahout.
    Technologies: PHP, Zend Framework, Elasticsearch, MySQL, REST, Behat
  • PHP Engineer and Consultant (Contractor)

    2012 - 2013
    Xigen
    • Mentored junior members of staff to develop their OOP skills and Zend Framework knowledge.
    • Built a Zend Framework system for a client that specialized in print. The system was comprised of an eCommerce front-end and a management system that allowed for the automatic "laying up" of artwork.
    • Introduced Agile methodologies to the business and acted as a consultant in applying Scrum to one of the development teams.
    • Improved the in-house CMS used to power Epson's public facing websites, providing stability on deploys.
    • Introduced PHPUnit to legacy systems that were prone to the introduction of regressive bugs.
    Technologies: PHP, Zend Framework, Scrum, jQuery
  • Senior Developer

    2011 - 2012
    Affiliate Window
    • Worked with a remote team based in Berlin to integrate the Affiliate Window and Zanox back-ends after Affiliate Window was acquired.
    • Created REST endpoints for the Berlin team to consume, and consumed REST endpoints exposed by the Berlin team.
    • Created an SSO (single sign on) solution to allow users to seamlessly switch between the Zanox and Affiliate Window systems.
    • Integrated Zanox publishers into the Affiliate Window network.
    • Regularly profiled code using Zend Studio and Xdebug to identify bottlenecks in the application.
    Technologies: PHP, MySQL, jQuery, PHPUnit, Behat
  • Head of Web Development

    2010 - 2011
    Quacquarelli Symonds
    • Led a team of nine PHP developers and a Scrum Master in two different development areas of the business. One area focussed on public facing websites built in Pressflow - a Drupal distribution. The second area focussed on a custom-built data collection system used to request research information from Universities.
    • Managed the web infrastructure of the business, including physical hardware.
    • Implemented a Varnish cache on public facing areas of the site to handle annual 10x-20x spikes in traffic due to the release of the company's "World University Rankings".
    Technologies: PHP, MySQL, Drupal, Pressflow, Scrum, Webistrano, Varnish
  • Web Developer

    2005 - 2010
    Quacquarelli Symonds
    • Worked on the development of the company's web properties, topmba.com and topuniversities.com, written in PHP.
    • Wrote application to collect research statistics from universities and push submitted data through a validation pipeline. This data was ultimately used in the company's annual release of the "World University Rankings".
    • Researched and introduced Scrum to the development team.
    • Researched and introduced Subversion to the development team; no version control system was in use previously.
    • Migrated legacy systems from the Lasso language over to PHP, increasing the number of developers who were able to work on those systems.
    Technologies: PHP, MySQL, JavaScript, Lasso, FileMaker, Subversion

Experience

  • Kickabout (Other amazing things)

    Currently designing and developing the full-stack of a new app to help with collecting payments for groups of sports players.

    Built on AWS, with a Laravel (PHP) back-end, Angular/Ionic front-end, the app will work across web and mobile.

Skills

  • Languages

    PHP, JavaScript, SQL, Python
  • Frameworks

    Laravel, Flask, Zend Framework, Symfony
  • Tools

    RabbitMQ, Vagrant, Subversion (SVN), Concrete5, Terraform, PhpStorm, Git, Ansible, TeamCity
  • Storage

    MySQL, Redshift, AWS RDS, Vertica, Neo4j
  • Libraries/APIs

    Vue.js, jQuery
  • Paradigms

    REST
  • Platforms

    AWS Kinesis, AWS EC2, Docker
  • Other

    Data Modeling

Education

  • Bachelor's Degree in Computing, IT, and Applied Psychology
    2015 - 2021
    Open University - Milton Keynes, United Kingdom
Certifications
  • Certified Laravel Developer
    JANUARY 2018 - PRESENT
    Laravel
  • AWS Certified Developer - Associate Level
    NOVEMBER 2016 - NOVEMBER 2018
    Amazon Web Services
  • Neo4j Certified Professional
    MAY 2016 - PRESENT
    Neo4j
  • Zend Certified PHP Engineer
    MAY 2015 - PRESENT
    Zend

To view more profiles

Join Toptal
I really like this profile
Share it with others