I am technology leader, architect, mentor, code wrangler, and software poet in the Scala "Big Data" and Java Enterprise spaces. At present, I have moved in the "Big Data" space building processing and analytics tools for real-time event processing. Previously, I have worked mostly in Saas-based data-intensive applications and processes. I have been in the Java Enterprise application and web services arena. I have worked all areas from the front-end GUI to the database backend, developer to architect, from build and deployment systems to automated testing and everywhere in between. Sometimes I work in many of the areas within the same day.
I value the quality of the solutions I craft for their building, testing, and maintenance characteristics. When I write new code or re-factor existing code, I use unit tests to insure correct functionality, as well as Design Patterns for keeping implementations simple, easy to maintain, and consistent with many of today's good programming practices and paradigms.
I am always on the look out for new technologies and libraries that truly simplify development and maintenance of applications, not just talk hype. Recently, I introduced a new technology stack to a former employer including AngularJS and Bootstrap 3 for the UI, Play and AKKA Frameworks for the backend service, and MongoDB as a primary datastore.
Currently, I am using Play, Akka, and Kafka to make a application production ready and hardened for the scalability needed in this year(2015).
I always strive to leave any code I create or modify at least a little bit better than when I began working on it.
Technical Lead, Senior Software Engineer @ This is a brand new startup, more info to come. From July 2015 to Present (4 months) Louisville, COBig Data Contractor @ Currently helping to build a real-time event processing and analytics system to track user behavior and prevent problems and issues in various systems before they reach the customer. This system is currently handling 25K events per second in near real-time and is designed to handle 100K+ events per second.
Technologies used in this system: Play, Scala, Akka, Kafka, Zookeeper, Spark, Hive, Druid, Avro, and many more.
I also built simple monitoring in a few days using Play, Akka and AngularJS to keep watch over all the apps running in the different deployed environments. This app allows are quick feedback on internal application health during deployments and for quick problem identification when alerts and alarms are triggered. From December 2014 to July 2015 (8 months) Broomfield, COEnterprise Architect @ * Restructuring the existing code base to reduce the development life cycle time to production by modularizing a monolithic enterprise application and database architecture in separate products and hot deployable modules.
* Designed and architected a new product to be deployed in the cloud to move the company in that direction while still communicating with existing systems to pull data into the cloud on demand.
* Rebuilt the Jenkins build system and development processes to employ consistency in the versioning, deployment and dependency management to increase code quality standards and consistent deployments.
* Completing a major migration on all existing products from the legacy platform to the current JEE 6 platform.
* Introduced an new Micro-services architecture to transform the company to a faster and cleaner deployment pipeline using Play, Scala, Akka, AngularJS and MongoDB technology stack.
* And all my daytime duties. From June 2012 to December 2014 (2 years 7 months) Greater Denver AreaSenior Java Engineer @ • Built a scalable email generation system to enable out customers to receive information on demand about expiring miles/points in their reward programs and the current status of their accounts.
• Built a metasearch flight and hotel system that merges results from multiple search providers to allow for more flight and hotel choices than current OTAs can provide.
• Made many enhancements to the backend administration tool to enable the business folks to add/update rewards program information and other critical systems immediately and without IT intervention. From August 2011 to May 2012 (10 months) Greater Denver AreaSenior Java Developer @ • Worked on an upgrade to a JAX-RS web service API to begin the next iteration of the interface.
• Due to some problems between Mocopay and Robert Half Consulting, I was pulled from this position and I was not able to complete this work. From June 2011 to July 2011 (2 months) Downtown DenverBullpen Co-Lead, Senior Java Developer @ • Rebuilt the entire development infrastructure to upgrade the development shop to use current versions of Hudson, Maven, Ant, Flex, and Java 6. This included migrating our CVS repository to Mercurial, optimizing the code builds which resulted in Hudson build times being 5 times faster(5 mins per artifact on average). Removed legacy technologies and frameworks to reduce the artifact sizes by 5 times (30 MB down from 170MB) and freed the code base to move in any future direction the department needs.
• Designed with the customer, lead a small team of developers, and was a primary developer for a complete overhaul of the product permissions system and main GUI. The new approach is much faster and provides a much simpler model that would we be easier to maintain the code base with fewer bugs than the legacy system. Also a simpler interaction with the system for the end users to operate and configure the system will reduce support and training costs over the long term.
• Completely overhauled the legacy Web services layer from an AXIS 1.x JWS implementation that was hard to modify and required over 5000 lines of code to support to a new clean CXF interface that could be managed easily and efficiently.
• Upgraded, rebuilt and simplified the main JEE web application configuration utilizing Spring 3, BlazeDS(for a Flex front-end) and Hibernate 3.5(for JPA support). From July 2008 to June 2011 (3 years) Sr. Java Engineer @ From March 2003 to June 2008 (5 years 4 months) Senior Web Developer @ Denver Office From November 2000 to March 2002 (1 year 5 months) Software Engineer @ From November 1997 to July 2000 (2 years 9 months) Software Engineer @ From July 1993 to November 1997 (4 years 5 months)
Functional Programming Principles in Scala, Machine Learning @ Coursera Online Learnig From 2013 to 2015 BA, Mathematics and Computer Science @ Tabor College From 1987 to 1991 M101P: MongoDB for Developers, M102: MongoDB for DBAs @ MongoDB University David Buschman is skilled in: Play Framework, Scala, Akka, Git, Gradle, REST, MongoDB, Maven, Hibernate, Spring, Java, Groovy, Jenkins, Artifactory, Design Patterns, Web Services, Software Development, Java Enterprise Edition, Eclipse, PostgreSQL, XML, Linux, JavaScript, JMS, Subversion, Web Applications, Spring MVC, HTML, Grid Computing, JIRA, Oracle, Spring Framework, Apache Kafka