Cardiff University / Prifysgol Caerdydd
Product Director at Sorenson Media
Join LinkedIn & access David’s full profile
I'm a seasoned software developer, scrum master and team leader. I have extensive experience in designing, writing and delivering software across a number of different industries and have a proven track record of delivering projects on time and at a consistently high quality within high-performance teams.
I'm enthusiastic and knowledgeable about a wide range of topics within software development and constantly seek out opportunities to experience and influence different points of view. An avid reader, I have a hunger for learning and constantly inspect and adapt my own working practices.
I thrive in the company of like-minded individuals, and love to coach and inspire others to enjoy developing software, and to take great pride in their work.
Serving as Product Owner for the Spark Enlight television analytics project.
Adaptive Logic supplies software development consulting and agile coaching services to clients in South Wales and the South West of England.
At Monitise, I was Scrum Master to three teams assigned to delivering Monitise mPOS, a Mobile Point of Sale Application for iOS and Android.
My responsibilities as Scrum Master included: coaching team members on various aspects of agile software development such as Scrum, writing user stories, estimating, forecasting, pair programming, TDD and BDD; facilitating key Scrum meetings such as planning and retrospectives; resolving impediments; making development process improvements and resolving conflict.
At UCAS I helped to deliver the 2014 release of the UCAS Teacher Training application.
The application included components using Java EE, Spring and Hibernate with Oracle and Informix on OC4J and WebLogic. My project responsibilities included coaching the wider project team on agile methodologies, assisting in release & resource planning and software development.
During my time at UCAS I led an effort to move release builds from IDE-based tasks on developer machines to Maven-based jobs on a CI server. In addition, I pioneered a universal database update mechanism across all database upgrades to simplify development and deployment. Other achievements included increasing pair programming take up, and code review practices.
At Specific Media, I was part of a Scrum team responsible for designing and developing an application for capturing user analytics from Smart Televisions.
My work included writing a client component in CoffeeScript to invoke a Node.js REST server, which stores request fragments in MongoDB. A proprietary extract, transform and load (ETL) application was used to enrich those fragments with geospatial data, before being stored in MySQL, for interrogation by a proprietary reporting application.
I was also involved in the development of a Java EE-based advertising brokerage service, which was used by C++ and CoffeeScript components on Smart Televisions for selecting image and video advertisements for display to end users.
I was instrumental in improving the Scrum implementation within the team and the wider company. I was chosen to serve as the team Scrum Master after only three weeks and have become the coordinator of the Scrum Improvement Community.
At Monitise, I was part of a professional services team delivering mobile banking features to Visa.
I successfully delivered a RESTful service for locating ATMs and Visa payment terminals across the USA using Spring, Glassfish and Oracle. I refactored the existing service to improve the way distances between locations were calculated, and wrote a comprehensive regression test suite in JBehave.
In addition, I was part of a team who delivered an m-commerce platform to a joint venture between Monitise, Carphone Warehouse and Visa in an extremely high-pressure environment. The application used Spring, Apache Camel, Glassfish and Oracle to take credit card payments, conduct fraud checks and integrate with numerous retail applications over SOAP. I was awarded for my outstanding contribution to the project after recommendations from my peers.
As team leader, I used my influence to introduce Scrum concepts, including a sustainable pace, a product backlog, backlog grooming, sprint reviews and retrospectives. After a 3 month trial period, the team abandoned Scrum to better adapt to the customer’s needs, but retained a lot of lessons and improvements.
I also contributed to the award-winning Natwest and RBS mobile banking applications on iOS, Android and Blackberry through improvements to Monitise’s mobile money platform.
At NetDev, I was responsible for introducing performance improvements on the flagship call-handling application, in addition to working on new features and fixing defects.
I increased the call-handing capability of the application from 160 to 400 calls-per-second on the same hardware by introducing a messaging-based replication mechanism using JMS.
The application used Restlet, Google Guice, MyBatis and TimesTen in a Java SE environment.
At ThruPoint, I was part of a team responsible for providing a remote API for call management on a carrier-grade VOIP application server. The API was written as a RESTful service, which produced and consumed JSON using HTTP long-polling.
At Avaya, I was part of a team specialising in security. As part of this, I was responsible for delivering the client and server components of a certificate and key distribution application making use of the Java Cryptography Architecture . I was also a key contributor to the project tasked with migrating Avaya’s VOIP application server from sockets to NIO for SSL traffic.
Whilst at Avaya, I began work on an open-source PKI enrollment library. Eventually my work was licensed back to ThruPoint for use in mobile device management on Android and Blackberry.
-- TRANSFERRED TO THRUPOINT --
At Wired Media, I designed and implemented a content management and e-commerce platform used by small and medium enterprises. The platform was based on PHP and PostgreSQL, and deployed on Apache and Microsoft IIS.
I also delivered a prototype application for larger customers based on the emerging JSR 286 Portlet specification, using Apache Pluto, Apache Tomcat and PostgreSQL.
I was responsible for all aspects of the technical direction of the company, including recruitment, training, networking and server maintenance. Whilst at Wired Media, I introduced source control, managed backups, networking security and the migration to a managed hosting provider.
At Asserta Home, I was a member of a development team responsible for maintaining the second-largest UK property portal and writing tools for mining portal data. I was involved in a number of projects:
Firstly, the extraction of data from Oracle using JDBC for the generation of XML documents of user-specific property recommendations. The XML documents were transformed using XSL to create multipart MIME e-mail in plain text and HTML.
Secondly, the summarising of 20+ key business analytics for key customers to determine advertising efficacy in a web-based UI.
Key technologies: Java SE, JSP, Servlets, JDBC, Oracle, JavaMail
Helping to organise meetings in South Wales to promote and support understanding of Scrum, Lean, Kanban, Extreme Programming and Agile software development in general.
A preview of what LinkedIn members have to say about David:
Converts JBehave grammar to Gherkin for use by Cucumber, SpecFlow, Behat or behave.
Mobile Point of Sale application for Android, iOS and BlackBerry
Spark Enlight enables broadcasters and advertisers to benefit from near real-time, device-level television viewing data and analytics & insights across both TV programming and advertising.
Founder/Publisher at TBI Hope & Inspiration / Keynote Speaker
Greater Boston Area
VICE PRESIDENT OF MULTI-MEDIA - CBS TELEVISION DISTRIBUTION
Greater Los Angeles Area
Head of Onboarding - Engagement Manager at Needle
Greater Salt Lake City Area
Agent at State Farm Insurance
Columbus, Ohio Area
Washington D.C. Metro Area
Product Director at Sorenson Media
Technical Architect at Monitise
Head of Engineering - Service Platform at NAGRA
General Manager (UK) at Sorenson Media
Certified Agile Trainer & Director at Agile Snap
Senior Software Engineer at NAGRA
Software Engineer at Leaf Development
Software Architect at IBM
Software Development Manager at Companies House