David James

PHP Web Developer / iPhone Developer

Zend Certified Engineer

Hello World! I love programming! Read on for the whole story.

The diagram to the right gives a high-level view of my individual skills and experiences. It also visualizes my expertise at bringing these diverse elements together to create flexible and scalable web and mobile systems.

For me, the most exciting part of the stack is the Service Layer, and the one I've been focussing on for the past year. It is a point of abstraction between controller and model (think of it as extending MVC to become MVCS - Model, View, Controller, Service). My experience developing several apps using a service layer has proven at least two major benefits: 1. it creates an agile stack by decoupling dependencies in the controller and model, a problem that plagues many web applications and typically limits their scalability and 2. it enables immediate transition to the mobile space and API market — i.e. since it is roughly equivelent to an API (accessed locally), when the app is done so is the API.

Check out my new iPhone app!


"Where Am I? is a photo-based, location guessing game. Where Am I? turns photo sharing into a game that's as easy as 'Snap. Share. Play.'" Check it out!
July 2011 to Present Lead PHP Developer
SaySo LLC
Description:Lead programmer and architect for SaySo client side apps and APIs Description:pending...
    Accomplishments:
  • PHP | MySQL | Zend Framework | JS/JQuery/Ajax | Node JS | OOP | OOD | API SaySo Admin  +
    • SaySo Admin refactored Javascript to reduce technical debt (1200 lines reduced to 600 using best practices)
    • (As this is a re-grouping of our former company, there is minimal experience to demonstrate at the moment. See next position for what I've been up to for the past year and a half)
October 2009 to June 2011 Lead PHP (iOS) Developer
SpectrumDNA, Park City, UT

Contacts and References:

Ryan Hansen, Head of Engineering   
Letter of Reference +

October 2010

To whom it may concern:

It is a privilege for me to write this letter of recommendation on behalf of David James. I had the pleasure over the past year to work closely with David, both as the leader of the technology team on which David played a critical senior role, but more importantly, as his friend, colleague and fellow system architecture aficionado.

Like me, David loves excellence, and in my fifteen years of experience in technology as a programmer, analyst and leader, I can say with complete honesty that I have never met another who was quite as committed to quality as David is. David knows without question the world that he belongs in and he inhabits it with pride and passion, which is infectious and elevating to all who work with him.

While David is unyielding in his drive to improve himself, his co-workers and the software systems under his care, his breadth of experience makes it possible for him to deliver the highest of standards with an eye always on speed and priorities. It's a delicate balancing act and an age-old battle between "doing it fast" and "doing it right" and in David the historically antithetical pursuits have found an elegant harmony.

One of the most interesting, useful and thoroughly entertaining aspects of David's personality is his love of design patterns. His co-workers, including me, often found ourselves laughing and marveling at how quickly David could name a design pattern that was specifically intended to solve a problem we were working on. It didn't matter how obscure the problem was, David could almost immediately name at least one pattern, if not more, that suited the need.

...

I am happy to recommend David to play a key role in any software effort, from system design to programming to mentoring younger players. The world of software applications and programmers will only be improved by his involvement.

Sincerely,

Ryan Hansen
Founder/CEO
Develligent, LLC

Vincent Beerman, Director of Development   
Letter of Reference +

Linked In recommendation June 2011

David possesses a unique blend of skills for a developer. As lead engineer on most of our trans-media social loyalty and gamification apps, David offered sober, pragmatic approaches to our clients' demanding feature requests. Further, he always considered the long-term evolution of the system and potential development or impact on the clients APIs.

David built numerous apps and APIs utilizing social media, geo-location, gamification, and contextual automation.

He works well leading a team and is a calm, reassuring voice in client meetings. I would welcome the chance to work with David again. He is a talented, creative and thoughtful individual.

Description:Lead programmer/architect for social/gamified platforms Description:Lead programmer/architect for social/gamified platforms including PlanetTagger app and API, Gamify API, Addictionary app and API and iPhone apps
    Accomplishments:
  • iOS/Objective-C | PHP | MySQL | Zend Framework | JS/JQuery/Ajax | OOP | API API, Frameworks, Apps
    • Wrote API Specification for all business rules of the PlanetTagger platform including over 140 calls including parameters, response types and errors.
    • Built PlanetTagger API which wraps the major portions of the platform including authentication, user sessions, entities: user, location and event, lists/pagination, search, comment/replies, promotional messages, image handling (retrieval and uploading). Infrastructure was based on Zend Framework controller/action paradigm. Returns native objects (for server only calls), JSON or XML.
    • Created API Framework which is a refactor the PlanetTagger API including moving/reorganizing/rewriting to build an API centric framework. Four APIs and several applications were subsequently built on this framework
    • Created the Gamify API + Documentation to enable "gamification" of apps and APIs, handling users, actions, awards (points/levels) and leaderboards. Architecturally, it supported both standard HTTP requests (explicit model) and on-server triggering of gaming actions (implicit model -- instances of a Game class handled pushing events to the backend)
    • Addictionary / There Oughta Be a Word re-built the famous Addictionary web site using an MVC architecture that supported multiple Addictionary games (apps) including the ever-popular "TOBAW": There Oughta Be a Word
    • Addictionary API created this API inline with the Addictionary app rebuild. Goal: when the app is done have an API ready and waiting for mobile dev. The app used the API exclusively for it's data model/source via service layer adapter – i.e. no db queries existed in the app controller layer
    • PartyTagger (supporting role) our first web app built without a database! All calls routed to the PlanetTagger API via Adapter
    • Integration/collaboration with External Apps worked with developers to create an iPhone app and browser based applications (Google App Engine). Responded to their needs including improving many aspects of the API while maintaining integrity to the design.
  • iPhone/iOS/Objective-C | API iPhone/iOS Development
    • "Where Am I" iPhone app built an iPhone social game application including integration (and building of) a Facebook app and API layer. Get the app now! (or just check it out)
    • ONConnect iPod/Linea Pro maintained and completed a first iteration (taking over from former developer). Application was used on iPods attached to Linea Pro card and UPC scanner
    • ONTagger and DigitalUproar iPhone apps (supporting role) fine-tuned our existing PlanetTagger API to work with diverse mobile applications
  • PHP | MySQL | Zend Framework | JS/JQuery/Ajax | OOP | OOD | API PlanetTagger
    • True Cross-domain Single Sign-on enabled four SSO paths including PlanetTagger users or Facebook users, going to or from external applications. Used the API for validating users, submitting Facebook credentials or PT access tokens. Built cross-domain client-side logic to enable true SSO.
    • Featured Sponsored Messaging in PlanetTagger which enables sponsoring locations, events and people, administration of the promotions and message display within the network based on radius-based queries. Built a full-text as-you-type search feature for the admin page. Integrated tracking metrics for views and click thrus. Created widget with auto/manual rotating ads.
    • Base Object Library including collections, active record, printable objects, SQL objects, persistency and more
    • Feed Service Integration with Gnip which grabs Twitter feeds via polling daemon, parses these and adds to database. Created a set of feed classes to handle this logic (based on ZF components and the Atom feed format).
    • Email/SMS Notification and Activity Logging System which sends messages (via polling server) based on location, event or user activity as it relates to the logged in user's following/checkin and other statuses.
    • Inline Replies to Comments/Tweets which are very similar to Facebook implementation. Including Javascript and backend which also handles email notifications.
    • Time-zone Handling to automate and simplify the process for users across time zones.
    • SOAP Service Integration which is a wrapper to submit, parse and re-deliver data via the API.
    • Entity Cloning enabled the ability to clone entities.
    • Documentation including Code Standards, Best Practices, Code Smells, API Documentation, UML
March 2009 to October 2009 Web Application Engineer
Diamond B Technologies, Billings, MT
Corporate website for TTA Works project

Contacts and References:

Aaron Ramage, Project Manager   
Letter of Reference +

2/19/2009

To whom it may concern,

This is a letter of recommendation for David James. David works in my organization at Dealerspan [a Diamond B company] serving as an Engineer on the Development Team.

David is responsible for developing portions of a very complex web based application. David has taken on some very challenging projects and has done an excellent job from requirements gathering and project organization all the way through development and implementation.

Here at Dealerspan, David is best known for being highly organized and methodical in his approach. His work is innovative and technically sound. He is a self starter and is very conscientious about both schedule and quality. David does an excellent job of communicating progress to the team and to management and he requires very little supervision. He is consistent, reliable, and responsible.

David brings to the table a strong work ethic, a high level of expertise, and a sincere passion for his work. He is comfortable and effective in either a team environment or working alone on a project. I am confident that he will be a significant contributor to any organization that he works with.

Feel free to contact me if you require any additional information regarding David's qualifications and contributions to Dealerspan.

Sincerely,

Aaron Ramage
Manager
Dealerspan, LLC
(406) 652-9648 x122

PDF Original PDF

Description:Web application engineer responsible for creating front-end single-signon PHP application integrated with Flex Air and Oracle LMS. Visit promotional site TTA Works for more information Description:Web application engineer responsible for creating administrative front-end single-signon PHP application integrated with a Flex Air application and Oracle learning management system. Visit promotional site TTA Works for more information. Diamond B Technologies is a web development company creating projects for diverse clients/markets. Primary technology is PHP/MySQL including recent integration with Flex Air applications. Current project is onsite/offsite training crew members in heavy industry
    Accomplishments:
  • PHP | MYSQL | ZEND FRAMEWORK | MVC | WEB SERVICES | FLEX/AIR | ACTIONSCRIPT CrewCenter / CrewRater  + Developed CrewCenter, a web application written in PHP5/MySQL using Zend Framework to administer the company structure, users and metadata (including syncronization) of two external technologies including (1) a remote (sometimes connected) Flex/Air application used in the field for scheduling/evaluating mining operators and (2) an Oracle LMS (Learning Management System) for providing online 3D animation training for the mining industry. The purpose of the application would be to provide a single-signon for these technologies for all levels, including administrative, management, trainers, supervisors and crew members. NOTE: the Flex app and the 3D training modules were developed by third-parties. It was our responsibility to build an admin interface and single-signon portal for both of these pieces, although in the end, we were also responsible for maintenance, bug fixes and minor enhancements for these technologies. Developed CrewCenter to the point full production and useage in several mines. The application is a PHP5/MySQL/Zend Framework administrative front-end, single sign on and data management and syncronization tool for a Flex/Air app used on hand held devices and an Oracle LMS for online training video training.
February 2007 to March 2009 Web Application Engineer

Special recommendations from key players in the PHP/Zend field

View Letter of Recommendation from John Coggeshall to Andi Gutmans

Andi:
Hey, how's the new gig? [reference to Andi becoming CEO of Zend] I hope all is well.

I wanted to take a moment just to point out a developer worthy of a recommendation to you guys (trust me if I could hire him today I would). His name is David James (CC'd) and I worked with him on and off over the past year as well as when I was working in PS. He's a solid OO guy and could be a valuable asset to anything connected to Zend Framework. If there are opportunities over there at Zend for that sort of thing (I believe he's interested in doing remote work) then I'd appreciate it if you might forward on to whomever needs devs at Zend now days for further consideration.

I'll leave it to David to take it from there and provide a CV, etc.

While I'm reaching out, I thought I would suggest we grab lunch sometime soon when you have time just to catch up. Let me know (we can take that offline)..

Cheers,

John

--
John Coggeshall
Chief Technology Officer
Automotive Computer Services

View LinkedIn Recommendation from Darby Felton

I had the opportunity to work with David on an interesting automotive web services project. He managed to deliver working and tested software that spanned multiple complex service specifications, including advanced search, configuration, selection, and comparison. In a single three-week Sprint, David wrote about 4000 lines of readable and maintainable object-oriented code to wrap the complex and stateful workflows of the web services, including 95% code coverage by unit tests. He effectively presented the results of his work in the next Sprint Review meeting by using an easily understandable functional testing interface that he had also developed. I found David's work to be wholly successful, and I would consider it a blessing for anyone to have the chance to work with him.

Contacts and References:

Aaron Ramage, Project Manager   
Letter of Reference +

2/19/2009

To whom it may concern,

This is a letter of recommendation for David James. David works in my organization at Dealerspan [a Diamond B company] serving as an Engineer on the Development Team.

David is responsible for developing portions of a very complex web based application. David has taken on some very challenging projects and has done an excellent job from requirements gathering and project organization all the way through development and implementation.

Here at Dealerspan, David is best known for being highly organized and methodical in his approach. His work is innovative and technically sound. He is a self starter and is very conscientious about both schedule and quality. David does an excellent job of communicating progress to the team and to management and he requires very little supervision. He is consistent, reliable, and responsible.

David brings to the table a strong work ethic, a high level of expertise, and a sincere passion for his work. He is comfortable and effective in either a team environment or working alone on a project. I am confident that he will be a significant contributor to any organization that he works with.

Feel free to contact me if you require any additional information regarding David's qualifications and contributions to Dealerspan.

Sincerely,

Aaron Ramage
Manager
Dealerspan, LLC
(406) 652-9648 x122

PDF Original PDF

Josh King, Manager of Development   
Letter of Reference +

Letter of Recommendation for David James

To Whom It May Concern:

This letter is to recommend David James. I worked with David James for 2 years, and served as his direct supervisor.

David demonstrated remarkable organization, skill and efficiency as a programmer for our company. David takes programming very seriously and produced quality code consistently for us.

David demonstrated strong work ethic during the time that I've known him, and always met or exceeded expectations. David was willing to take a project head on, and run with it.

I highly recommend David, and enjoyed very much getting to know him.

Sincerely,

Josh King

PDF Original PDF

Jason Blair, Former President and Owner   
Letter of Reference +

Letter pending

Luke Cordingley, Engineer   
Letter of Reference +

February 19, 2009

To Whom It May Concern:

This letter is my personal recommendation for David James. I have worked with David for 2 years on implementing web applications for the automotive industry. He has a knack for researching and fully understanding software requirements while staying mindful of deadlines and never sacrificing quality of development.

David has single handedly owned a few large projects in the company and when it came time to merge his projects with existing applications, David's efforts interfaced seamlessly and adhered to the company's programming standards and best practices.

David's enthusiasm and passion for his work is evident in his thoroughness, dependability and constant self-education. Always open to constructive criticism and constantly looking to improve his skills he strives to go beyond the expected. David is also willing to help out in areas outside of his projects. Mindful to not duplicate effort, he takes time to understand the work of his peers and communicate with others on the team. David's diligence in documenting his work allows others to learn from his endeavors and highlights him as a team player.

David James would be an asset to any software organization.

Sincerely,

Luke Cordingley
Programmer
Dealerspan

PDF Original PDF

Description:Web software engineer responsible for development of applications, modules and library for automotive dealership software written in framework driven PHP5. Our innovative software provides a front-end solution for auto-dealers, from initial customer interest on websites, through lead capturing, opening in application workspace to the desking process. Description:Web software engineer developing an automotive dealership application in framework driven PHP5
    Accomplishments:
  • PHP | MYSQL | JQUERY | JAVASCRIPT | AJAX | JSON | ZF COMPONENTS Customer Workspace  + Toolbox application for handling customer events (a.k.a. CRM "incidents") and dealership lead-to-booked workflows. Implemented using object-oriented Javascript where instances represent PHP/AJAX "services". Dependency injection and observer notifications used to create a dynamic client interface. Functionality includes multiple open interfaces per user, customer management, customer search, event creation, messaging, complete form handling (including new, edit, delete/undelete, copy), customer history, event summary and step manager (for desking process). Application for managing complete customer interaction for the lead-to-booked workflow of modern dealerships. Flexible container based UI allowed injecting and integrating multiple Javascript/PHP services.
  • ZEND FRAMEWORK | MVC | XML | EBAY XML/API | PHP | MYSQL Ebay Auction Application  + MVC auction application for Ebay Automotive's XML/API, including authentication, configuration, Ebay session handling, XML request/response handling via HTTP client. Completed inventory-to-auction workflow to sandbox server. MVC auction application handling complete workflow for Ebay Automotive XML/API
  • PHP | ZEND FRAMEWORK | PATTERNS | MYSQL | JAVASCRIPT | JQUERY | AJAX Form Controller  + Principle contributor to a database driven composite form engine using a front controller. This engine is used throughout the application, for all customer and incident data. Forms can be opened from any location, including external websites, the core application or elsewhere, and still behave the same. As a result, this engine became the backbone for our customer lead capturing workflows. The form engine made all input fields, simple or complex, standardized throughout the application; validation, filtering and data population were all automatic. Using the form engine was often as easy as one line of code (and possibly tweaking it's behavior through strategy based logic classes). Javascript enabled forms became rich interfaces, without it the forms continued to function perfectly with request based logic. Other features included multi-page forms, dynamic forms and editable data grids. Principle contributor to a database driven, composite object, form engine using a front controller. The engine completely automates form handing for all customer/incident data, linking external websites (leads) to the core application (sales process).
  • SOAP | PHPUNIT | PHP | SCRUM Web Service Component  + SOAP API component for automotive web service including vehicle description, validation, configuration, comparison and searching. Handles complex, incremental and stateful workflows. Unit tested with PHPUnit (95% code coverage). Automotive web service SOAP API component unit-tested with PHPUnit.
  • MYSQL | PHP | JAVASCRIPT | JQUERY | ZF COMPONENTS Advanced Search Engine  + Advanced criteria search engine for obtaining customer incident data. Criteria including customer information, form data, sales team, employee, incident status, date ranges or any combination of these. Created an interactive modal interface to display this as a result grid and detailed view. These views could also be interacted with for various functionality. The data is gathered from across the application using a combination of queries, data collection objects and core components. Advanced criteria search engine for obtaining customer incident data including interactive result grid and detailed view.
  • PHP | MYSQL | AJAX | JAVASCRIPT | JQUERY | ZF COMPONENTS Customer Viewer  + Modal viewer application for one customer, containing access to everything about that customer through a tabbed interface where each type of data can be viewed or edited as independent sub-services including standard details, addresses, phone numbers, family relations, vehicle history (purchase, test drives, trades), incident/form history and messages. Modal viewer application for a customer, including customer details, addresses, phone numbers, family relations, vehicle history, incident/form history and messages.
  • JAVASCRIPT | JQUERY | AJAX | PHP | PATTERNS Code Showcase: Servo Platform  + Participated in code competition. Created a generic platform for enabling subscriber accounts to write custom applications using platform services. Client side AJAX calls would connect to services and provide PHP class name parameters including strategy, decorator and command based classes for overloading and customizing generic behaviors on the server. Classes may exist in combination on the application or on the platform and be retreived on the fly. Participated in code competition. Created a generic platform for enabling subscriber accounts to write custom applications using AJAX/PHP platform services that could be altered on the fly.
  • PHP | MYSQL | PATTERNS | XML | EAV | ZF COMPONENTS Library contributions  +
    Active Record Component including table introspection, CRUD operations and persistency
    Global Lead Capturing Class used everywhere in our core application, Red Flag application and external websites, this module captures and stores form data across a row-model and relational schema of over 15 tables, at the same time automating lead generation and customer data.
    Data Extraction Component for transforming form data from one or many sources to one or many targets based on XML configuration (for instance, a test drive form that branches into an appointment form and an inventory form when lead is imported from external website)
    Customer and Customer Incident Classes for managing all aspects of a dealership customer interaction and data model
    Inventory Import Framework allows importing DMS data from multiple data sources (xml, csv, etc) for multiple dealerships into internal database schema while maintaining data integrity within the core application
  • · Active Record Component
    · Global Lead/Data Capturing Class
    · Data Extracting/Transformation Class
    · Customer and Customer Incident Management Classes
    · Inventory Import Classes
October 1999 to February 2007 Web Developer / Graphic Designer
Eagle Business Forms, Billings, MT, USA
Description:Web developer and graphic designer responsible for creating two business form ordering web applications as well as designing corporate identity, print design and information/form design. Description:Web developer for two business form ordering web applications and graphic designer for business forms and promotional media
    Accomplishments:
  • PHP4 | SMARTY | MYSQL | APACHE Business Form Ordering Application  + Engineered from the ground up, a complete business form ordering application in PHP and MySQL. Includes user/customer management, site administration, tabbed & wizard style navigation, demonstration mode, advanced form features and more. Created a business form ordering application in PHP and MySQL
  • PHP4 | MYSQL Stock Form Ordering / Inventory Management Application  + Developed a stock business form ordering and inventory management application for KOA Campgrounds currently being used by over 450 campgrounds across North America. Re-used and extended the form ordering engine built for eagleforms.net. Created a stock business form ordering application used by KOA Campgrounds across North America.
  • Designer/Lead for Web Development Branch  + Wrote, designed and printed a complete sales package for a web development branch (Eagle Web Works) including job spec sheets, pricing schedules, brochures and advertisements, including training sales department. Designed a web development branch including all supporting media and training.
  • Graphic Designer for Business Forms and Other Media  + Designed over 1000 business forms as well as many printed promotional materials including brochures, catalogs, and stationery using Photoshop, Illustrator, InDesign and QuarkXpress. Responsible for pre-press work including preparing digital art for film output, basic color management and printing jobs to a Xerox digital printer. Designer/technician for business form layout, corporate identity and print design.
August 2006 to November 2006 Freelance Web Development
Diversified Financial, Billings, MT, USA

Jason Blair, President and Owner   

Description:Independent contractor working with other remotes on various projects for automotive dealer software written in PHP. Description:Freelance developer working remotely with team on automotive software in PHP
  • PHP4 | MYSQL Ebay Template Engine  + Created an auction template and template engine written in PHP for Ebay Automotive auctions including authentication setup. Created a PHP template engine for Ebay auction listing including authentication setup.
2006 Freelance Web Developer
Description:Personal web development projects written in PHP, using Symfony Framework Description:Personal web projects written in PHP and Symfony Framework
  • SYMFONY | PROPEL | APACHE | PHP5 | MYSQL | SQLITE | YAML Artist Sites with Symfony  + Created simple promotional sites for local artist, www.hourofgold.com (including admin backend) and www.lookatmyart.com. Sites based on Symfony Framework with object relational mapping using Propel. Designed a generic and re-useable schema for artist's websites. Created promotional sites for local artist, www.hourofgold.com and www.lookatmyart.com
1989 to 1999 Other Experiences
  • Owner, Em Design graphic design firm (1992 - 1997)  + Provided complete print and identity design services for diverse clients. Handled consultation, graphic design, photography and copy writing. Project management with diverse vendors including other photographers, illustrators, copy writers, advertisers and printers Complete graphic design services to diverse clients.
  • Customer Service / Central Cash Manager for Royal Bank of Canada (1989 - 1995)  + Held various customer service positions including bank teller, supervisor, commercial accounts teller and central cash management. Excelled at providing professional customer service. Bank teller, supervisor, commercial accounts and central cash management.
  • Personal Care Giver to 92 year-old gentleman for 10 months in 1998
Additional Information
Technologies
  • · PHP5 + OOP with emphasis on version 5 object model and extensions
    · MySQLi, SQLite, SPL, Reflection, SOAP, DOM/SimpleXML
  • · MySQL and SQLite
  • · Javascript, Ajax, jQuery, JSON, XML, XHTML and CSS
  • · API Design & Development
  • · Web services including SOAP and HTTP + XML
  • · iOS/iPhone
  • · Mac OSX, Windows & Linux
  • · Apache with PHP/MySQL on Windows, OSX and Linux VM (VMWare)
  • · Zend Framework, Symfony Framework and custom frameworks
  • · PHPUnit (unit testing), Subversion, Mantis, Zend Studio, Eclipse, Flex Builder
  • · Flex, Air and ActionScript
Interests (section out-dated - have much more to add :)
+
  • Pursuing certification in Zend Framework (currently have certification in PHP5)
  • Recently completed Object Oriented Software Construction [Meyer] (also an introduction to Eiffel programming language) which has already had a huge impact on my understanding of object-oriented software development. Reading Design Patterns, Elements of Reusable Object-Oriented Software [Gamma], having the pleasure to use most of the patterns in my daily work. Also reading Agile Software Development with Scrum [Schwaber/Beedle]
  • Currently reading Adobe Flex 3 [Wrox], Clean Code [Uncle Bob Martin] (a.k.a. "How Not to Cost Your Employer $$$BigBucks in Technical Debt") and ActionScript 3.0 [O'Reilly/Mook] (a superbly written manual on this powerful ECMA language).
  • Other things I am interested in: framework-driven software (with initial emphasis on the model layer), service oriented architecture, test-driven development, persistent objects, Agile development (including Scrum) and programming languages (old and new)
  • Pursuing certification in Zend Framework (currently have certification in PHP5), recently completed Object Oriented Software Construction [Meyer] (Eiffel Language), Design Patterns, Elements of Reusable Object-Oriented Software [Gamma] and Agile Software Development with Scrum [Schwaber/Beedle]. Currently reading Adobe Flex 3 [Wrox], Clean Code [Uncle Bob Martin] and ActionScript 3.0 [O'Reilly]. Other interests include Flex/ActionScript/Air, frameworks, SOA, TDD, Agile, Scrum and programming languages.
Contact Me
My career goal is to work with a great team who are serious about quality and best practices in software development.

View David James's profile on LinkedIn