I'm a software engineer with 7 years of experience in web, real time, and high performance cloud computing industries. I have worked on PCI compliant payments gateways for industry leaders such as Verifi, scaled out backend infrastructure for highly concurrent MVNO with over 3 millions active users, designed, architected and implemented from scratch a sophisticated business rules engine using Akka Actor model and Scala, capable of making artificially intelligent business decisions in a chargeback industry.
Currently I am involved in leading initiatives to globalize a micro services backend core infrastructure for OpenTable to be able to support seamless restaurant search and booking user experience across the globe for over 100 million active users, via mobile platforms such as iOS, Android, Mobile Web and traditional web applications. Additionally, I'm working on building a data pipeline for applying machine learning algorithms across a suite of services for optimized realtime search and availability results.
Colleagues know me as a highly creative engineer who can always be trusted to come up with a new, optimized approach to solving problems. I spend a lot of time understanding the business and the audience and apply heavily Business Drive Design principles to new application architecture. I am a true team player, love to collaborate with others as I believe a good engineering team is a priceless tool in any business.
I have a Masters of Science degree in Computer Science with an emphasis on cloud computing and Reactive software application design. I was developing my thesis on Reactive software before it was cool. Prior to my MS degree, I received my Bachelors of Science degree in Computer Science and focused heavily on mathematics, NP completeness, automata, non-deterministic Turing machines etc...
I’m always interested in hearing from former colleagues, managers, or just interesting creative folk, so feel free to contact me if you’d like to connect
Senior Software Enigeer @ - Leading initiatives to globalize a micro services backend core infrastructure
- Building a data pipeline for applying machine learning algorithms across a suite of services.
- Upgrading legacy .NET codebase to state of the art languages, Java, Scala, NodeJs
- Optimizing latency for restaurant availability services to improve search performance
- Building next generating APIs for better integration with mobile platforms (iOs, Android)
- Improving deployment pipeline by automating integration testing and deployment framework
- Working with MongoDB and Redis to globalize and distribute business data across geographical regions
- Working with Docker and the Apache Mesos platform to deploy idempotent services without dependency on IT resources
- Working heavily with Apache Kafka and RabbitMQ to develop a distributed event driven publish subscribe architecture for integration between business services.
- Developing state of the art metrics platform for measuring and monitoring system service using StatsD and Graphite. From August 2015 to Present (5 months) Software Engineer @ - Leading initiatives to globalize a micro services backend core infrastructure
- Building a data pipeline for applying machine learning algorithms across a suite of services.
- Upgrading legacy .NET codebase to state of the art languages, Java, Scala, NodeJs
- Optimizing latency for restaurant availability services to improve search performance
- Building next generating APIs for better integration with mobile platforms (iOs, Android)
- Improving deployment pipeline by automating integration testing and deployment framework
- Working with MongoDB and Redis to globalize and distribute business data across geographical regions
- Working with Docker and the Apache Mesos platform to deploy idempotent services without dependency on IT resources
- Working heavily with Apache Kafka and RabbitMQ to develop a distributed event driven publish subscribe architecture for integration between business services.
- Developing state of the art metrics platform for measuring and monitoring system service using StatsD and Graphite. From November 2014 to Present (1 year 2 months) Senior Software Engineer @ - Software engineering for secure PCI compliant financial applications.
- Developing applications using primarily Java programming language as well as PHP.
- Using Spring 3 to develop highly scalable enterprise level RESTful web API's for partners and client to take advantage of the financial services provided by the organization.
- Developing optimized algorithms to perform advanced matching on extremely large datasets of financial transactions
- Updating legacy PHP framework code using cutting edge technologies such as Spring Batch, Erlang and more to decrease latency and increase throughput to 20 million transactions load
- Developing Drupal based front end CMS applications for end users.
- Working with a world class team of engineers to bring to market a stable system with 99.9% uptime
- Using tools such as Bamboo continuous integration server, JIRA project management, FishEye and Crucible for team peer review management
- Using GIT as the primary version control system for code management.
- Working in a highly agile software development environment following SCRUM development practices. From May 2013 to November 2014 (1 year 7 months) Software Engineer @ - Java Software development for all three tiers of J2EE enterprise Mobile Virtual Network Operator (MVNO)
- J2EE Core application development.
- Re-built from the ground up a generic platform for an MVNE using Spring DI, Spring MVC Web Services
- Created a schema independent persistence layer compatible with any RDBMS, based on Jooq library and without performance bottlenecks of JPA
- Designed and implemented new MVNO platform around a distributed JMS based publish/subscribe architecture to allow for asynchronous low latency responsive system.
- Worked on improving parallel processing of background tasks for a highly concurrent web application
- Re-implemented customer facing JSP based account portal web application for cross browser compatibility.
- Helped redesign and implement a data collection application responsible for processing gigabytes of incoming customer usage data.
- Designed/Implemented a new JUnit and Selenium based framework for automated regression testing of UI on nightly builds.
- Implemented background logic for service provisioning for GWT applications.
- Designed a fault tolerant secure data transfer client application to transfer customer data record files between secure data centers. From November 2011 to June 2013 (1 year 8 months) Software Quality Assurance Engineer @ - Designed software tools to automate software and hardware testing of biometrics security devices.
- Worked with law enforcement agencies to deliver fingerprint, mugshot, retina scan solutions.
- Developed perl and python scripts to automate software support escalation procedures using IBM ClearQuest software.
- Developed an ASP.NET, WCF based distributed web application for a regression test system of software releases.
- Developed a comprehensive Java based GUI testing automation tool to stress test Cogent GUI applications.
- Developed complex business intelligence report systems using JasperServer and LogiXML Info studio.
- Worked on code performance improvement and streamlining for a WCF based C# server application for a next generation physical access control system.
- Designed through documentation for existing software systems. From May 2010 to November 2011 (1 year 7 months) Quality Assurance Engineer @ - Quality Assurance software testing
- Software test optimization design
- Wrote detailed test procedure documents and UML flow charts for testing
- Created reports for tests and tracked bugs through an online reporting system.
- UML flow chart design
- Setting up and configuring Windows Server software
- Collaborative team testing
- Development of efficient software testing utilities and tools From November 2009 to August 2010 (10 months) Design Engineer Associate @ - Software Design Engineer Associate
- C++ development of real-time systems
- Database development with PHP and Mysql
- Designed a web based front end from scratch for a MySQL database, used by mechanical engineers.
- Designed a web application for systems engineers at ITT Radar to electronically store and retrieve all hardware documentation of a radar system.
- Converted the data from a 2000 pages of book written material into a database application built with HTML 5 and CSS and AJAX.
- Distributed Data Systems programming (DDS)
- Object Oriented design pattern targeted for code reuse.
- Ajax web development
- Graphical User Interface and DDS development in Java
- Technical reports and preparation of documentation
- Wrote test documentation to test each software requirement, which was implemented.
- Analyzed, designed and implemented radar computer software configuration items
- Development in Linux environment using make file build process
- Unit testing and rigorous documentation
- Development using spiral software development model From June 2008 to August 2009 (1 year 3 months) Systems Developer Intern @ - Systems Development Internship.
- Experience with Visual Studio 2005, Windows Server 2003, SQL Server, Etc…
- C# application development.
- Worked on .NET Framework programming and development and integration of a web application with SQL Server back end using ASP.NET and C#
- Wrote scripts to update SQL Server database, used to implement a C# application used to simulate Point of Sale (POS) systems for movie theaters.
- Achieve excellent experience with programming projects, deadlines, integration, testing, and source control. From May 2008 to July 2008 (3 months)
Masters of Science, Computer Science @ California State University-Northridge From 2010 to 2013 Bachelors of Science, Computer Science @ California State University-Northridge From 2004 to 2009 David Khanaferov is skilled in: Database Administration, Database reports with LogiXML, Database Reports with JasperServer, Perl, C++, CSS, PHP, JavaScript, Apache, Visual Studio, Algorithms, C#, MySQL, Java, Eclipse