David West, Software Developer in London, United Kingdom
David West

Software Developer in London, United Kingdom

Member since March 2, 2016
David is a skilled Java, native mobile, and react web developer with the ability to build web-scale, high-performance full-stack systems ahead of schedule. He's the type of developer who quickly gains expertise in any tech. His focus is on Java microservice back-end applications and he has a passion for building native iOS and Android mobile apps. David is comfortable working in any US or European time zone.
David is now available for hire

Portfolio

  • Clients (via Toptal)
    React, Redux, GraphQL, Kotlin Spring Boot Microservices, Docker, AWS
  • Clients (via Toptal)
    iOS (Swift), Android (Kotlin), Spring Boot Microservices, Docker, AWS
  • Phorest
    iOS, Android, Java (Groovy, Kotlin), Microservices, Docker, AWS, Spring...

Experience

  • Java, 15 years
  • Amazon Web Services (AWS), 6 years
  • Spring Boot, 5 years
  • iOS, 5 years
  • Swift, 5 years
  • Android, 3 years
  • React, 2 years
  • GraphQL, 2 years

Location

London, United Kingdom

Availability

Full-time

Preferred Environment

macOS, IntelliJ, Eclipse, Xcode, Git

The most amazing...

...feeling of accomplishment was having my first iOS app featured by Apple, after going from zero iOS experience to a first released version in two weeks.

Employment

  • Development Lead (Full-stack React Front-end, JVM Microservices Back-end)

    2018 - 2019
    Clients (via Toptal)
    • Built a React/Redux front-end application using functional React components and hooks.
    • Used an Apollo GraphQL library to communicate with the microservices back end.
    • Built the back end using Kotlin Spring Boot microservices. These loosely coupled microservices communicated using event-based communication with AWS SQS queues.
    • Deployed dockerized microservices using AWS Fargate, and continuous delivery with CircleCI.
    • Led a team of four developers to build an MVP project from the planning stages to completion in four months (coming in within time and budget).
    Technologies: React, Redux, GraphQL, Kotlin Spring Boot Microservices, Docker, AWS
  • Full-stack Developer (Native iOS/Android Front-end, JVM Microservices Back-end)

    2018 - 2018
    Clients (via Toptal)
    • Built two "sharing economy Uber-type" elegant apps: a Native iOS app using Swift and a native Android app using Kotlin.
    • Implemented communication via REST with Spring Boot-microservices written in Kotlin.
    • Deployed as dockerized containers on AWS Fargate.
    • Implemented payment processing via Stripe.
    • Built an admin portal using React/Redux.
    • Delivered the apps on time and within budget.
    Technologies: iOS (Swift), Android (Kotlin), Spring Boot Microservices, Docker, AWS
  • Technical Architect

    2010 - 2018
    Phorest
    • Designed the architecture and implemented a web­-scale, multi­-tenant cloud-based platform for the beauty industry with Java and open source stack with microservice architecture.
    • Built a multitenant cloud system that services thousands of businesses with millions of customers, built on elastic, scaling AWS cloud infrastructure using Amazon ECS and Docker.
    • Developed Spring Boot microservice applications deployed on AWS ECS; built with Java, Groovy, and Kotlin.
    • Built Objective-C and Swift iOS apps. One iOS app was featured by Apple in the App Store.
    • Developed native Android (Java, Kotlin) apps.
    • Built web apps using modern JavaScript frameworks such as React and Ember.
    Technologies: iOS, Android, Java (Groovy, Kotlin), Microservices, Docker, AWS, Spring, Hibernate, NoSQL
  • JEE Architect (Contractor)

    2010 - 2010
    Fujitsu
    • Acted as a Fujitsu consultant onsite at the Irish tax authority (revenue commissioners).
    • Developed a new ESB solution for revenue as part of their SOA strategy, in addition to Java development on other projects.
    • Used the Mule ESB to mediate JMS, web services, and legacy communication protocols between the revenue’s web applications and back-­end core tax processing services.
    • Defined the XA transaction strategy for integrating the various endpoints.
    • Worked on various other JEE applications using WebLogic, Sprint, Hibernate, and Ingres.
    Technologies: Java, WebLogic, Ingres, Spring, Hibernate
  • Solutions Architect (Contractor)

    2008 - 2009
    Sentenial Software
    • Designed and built a B2B core integration framework for SEPA’s high-volume message-­based, direct debit payment processing.
    • Developed a specific implementation for integrating Sentenial's SEPA payment system with the accounting systems of the Royal Bank of Scotland.
    • Designed a flexible integration framework which allows Sentenial’s suite of products to stream messages to heterogenous bank systems via web services, JMS, SFTP, files, etc, through a configuration of different endpoints.
    • Used Spring (including Spring Web Services and Spring Batch), various XML processing frameworks (DOM, SAX, XSLT, XPath, JAXB, XSD), JMS, WebSphere, JBoss, Oracle and DB2 on Windows, Linux, and ZOS mainframes. The system is currently being used to process payments in Royal Bank of Scotland and ABN Amro.
    Technologies: Spring (Spring Web Services and Spring Batch), DOM, SAX, XSLT, XPath, JAXB, XSD, JMS, WebSphere, JBoss, Oracle, DB2 Windows, Linux, ZOS
  • Senior Software Engineer

    2007 - 2008
    Cusp Point Software
    • Worked as the lead developer, mainly designing and delivering a large number of features in a highly distributed, multi­-tenant web application, targeted at terabytes of data in a SAS document management system.
    • Built an Ajax front­ end, back­ end, and did full-­stack development for the core document management web application using a JBoss Application Server, Seam, Spring, and JPA architecture.
    • Developed a SOAP/REST document management web service.
    • Created a back-­end domain ­object based security framework for a multi-­tenant web application using Spring Security.
    • Wrote a document ­routing workflow web application using JBoss JBPM, and a document batch processing engine using Spring/Hibernate.
    Technologies: JBoss Application Server, Seam, Spring, JPA, SOAP/REST Web Services, JBoss BPM
  • Senior Software Engineer (Contractor)

    2006 - 2007
    Corvil
    • Contributed to the build of an embedded platform for Corvil’s network bandwidth quality manager, to support introspection of network problems in high-volume, financial trading environments using statistical algorithms to analyze 10 GB packet rates to microsecond accuracy.
    • Managed and worked in core Java development.
    • Wrote network systems programming C/C++, Python and did Bash integration testing on a Linux platform running PostgreSQL.
    • Profiled and performance tuned Java and PostgreSQL.
    Technologies: Core Java, C/C++, PostreSQL, Python, Bash Scripting
  • Software Engineer (Contractor)

    2005 - 2006
    AOL
    • Developed a new web­services SOA, using J2EE technologies, supporting AOL’s internal and B2B strategy.
    • Helped design and build the Order Management Service; used a range of technologies and techniques, including web services (via WebLogic), Hibernate, Spring, Drools, Tapestry, Maven, and model-driven architecture (using AndroMDA).
    • Also used standard J2EE technologies such as EJB, JMS, and servlets.
    Technologies: WebLogic, Hibernate, Spring, Drools, Tapestry, Maven
  • Research Associate

    2003 - 2005
    University of Sydney | NICTA
    • Worked on two industry ­funded research and development projects.
    • Was involved in the development of a Bluetooth/GSM telecommunications hybrid-positioning system (Symbian/C++ and J2ME).
    • Worked with heterogeneous middleware for multi-modal input and output (Java, C++).
    • Was published in seven journal and conference publications.
    Technologies: Java, C#, C++, Symbian, J2ME
  • Technology Analyst (Intern)

    2002 - 2002
    Barclays Capital Investment Bank, New York
    • Developed applications for managing the corporation’s Sybase database users using Visual Basic; my work increased the application performance by over an order of magnitude.
    Technologies: Visual Basic, Sybase
  • Programmer (Part-time)

    1999 - 2001
    Genie Internet Consultancy
    • Principally worked on web ­application development using PHP, Perl, MySQL, JavaScript, and DHTML.
    Technologies: PHP, Perl, MySQL, JavaScript, DHTML

Experience

  • React Web App for a Grassroots Political Advocacy (Development)
    https://www.freeroots.com

    Freeroots.com is a website enabling ordinary citizens to create free grassroots political campaigns.

    The MVP was built it four months, and the app uses React, Redux, GraphQL, and Firebase on the front end and Spring Boot, microservices, Kotlin, and AWS on the back end.

    App Features:
    • Campaign creation and display
    • Bulk emails with client filters
    • Client management
    • Bulk CSV uploads
    • Analytics
    • Stripe Connect payments
    • Admin portal
    • Integration with complex APIs for contacting US senators and representatives
    • Social sign in

  • Scheduling and Point of Sale Application | Native iOS and Native Android (Development)

    This app is very popular with its tens of thousands of business users. It provides appointment scheduling (with my own calendar component), point-of-sale, reporting, staff scheduling and much more. I can demo it on request; it's available in both the Google Play Store and Apple App Store.

    • https://itunes.apple.com/ie/app/phorest-go/id623199514?mt=8

    • https://play.google.com/store/apps/details?id=com.phorest.phorestgo

  • Elegantly Designed Native iOS App for Hotels (Development)

    This application demonstrates my advanced use of native animations, custom transitions, and motion effects. It is available to demo on request.

Skills

  • Languages

    Kotlin, Groovy, Swift, Java, Objective-C, XML, SQL, GraphQL, C++, C, XPath, Bash Script
  • Frameworks

    JPA, Spring Boot, Spring JDBC, Hibernate, Spring, UIkit, Cocoa Touch, Cocoa, TestNG, JUnit, Google Guava, jBPM, Spring MVC
  • Libraries/APIs

    SAX, JMS, React, AMQP, Alamofire, CocoaPods, Facebook API
  • Tools

    ActiveMQ, Eclipse IDE, IntelliJ, Xcode, RabbitMQ, Android Studio, IntelliJ IDEA, AWS SDK, Amazon SQS, JBoss Drools, TestFlight, Git Flow, GitHub, Git, Cucumber
  • Paradigms

    Scrum, REST, Testing, Acceptance Testing, Unit Testing, Kanban, Microservices Architecture, Agile Software Development
  • Platforms

    JEE, Amazon Alexa, Docker, Amazon Web Services (AWS), Oracle, AWS EC2, iOS, Android, Windows, JBoss, MacOS, Linux
  • Storage

    JSON, MySQL, PostgreSQL, Spring Data, AWS S3, Memcached, AWS SWF, AWS RDS, Microsoft SQL Server, Sybase, Ingres, NoSQL
  • Other

    Apache Commons, DOM, Full-stack, RESTful Web Services, Integration Testing, WebLogic

Education

  • Master of Science degree in Computer Science: Networks and Distributed Systems
    2002 - 2003
    Trinity College Dublin, the University of Dublin - Dublin, Ireland
  • Bachelor's degree in Computer Science
    1998 - 2002
    Trinity College Dublin, the University of Dublin - Dublin, Ireland

To view more profiles

Join Toptal
I really like this profile
Share it with others