Daniel Valencia Backhoff, Software Engineer
I have over 10 years of experience as a software engineer and technical lead across a diverse set of projects that span from greenfield development to big complex integration projects with startups and enterprises in the fields of eCommerce, media, real estate, and AEC.
I treat software development as a craft, and I like my code well tested. I know that test coverage is important, but 100% coverage is impractical. I’ve done TDD and pair programming enough to understand its value, but I’m also pragmatic and understand that prototyping sometimes requires different approaches.
Collaboration is important to me, and I love bouncing ideas with fellow teammates. I enjoy mentoring fellow engineers and have held people management and leadership positions.
HELIX RE Inc, San Francisco, CA (February 2018 - current)
Senior Software Engineer
As a founding engineer for HELIX, I’ve had the opportunity to design and build our cloud platform from scratch. On my day to day at HELIX, I work closely with product, UX, frontend, backend and infrastructure engineers to build the features that comprise the HELIX platform. Some of my main accomplishments include:
- Establish key architectural decisions for the HELIX platform.
- Designed and implemented APIs for photo tour creation, point cloud management, job scheduling and orchestration, and file uploads of any size.
- Implemented authentication/authorization mechanism for the HELIX platform.
- Build infrastructure iteratively using infrastructure as code principles with Terraform and Helm charts.
- Managed a team of 4 engineers distributed globally in London, San Mateo and Guadalajara.
- Created offshore entity for HELIX in Guadalajara, Mexico.
Technologies used: - For our Microservices: Java, Spring Boot, Gradle. - For our Infrastructure: Terraform, Helm Charts, Vault. - Google Cloud Platform: Datastore, Cloud SQL, Pub/Sub, Kubernetes Engine, Cloud Storage.
Flux Data Inc, San Francisco, CA (December 2017 - February 2018)
Senior Software Engineer
As a Senior Software Engineer at Flux I was responsible of maintaining and building new features for the Flux platform. Some of my accomplishments include:
- Built a scalable file datastore by repurposing an existing JSON blob store to support any content type. One of main constraints was that existing APIs and plugins for the Flux ecosystem should continue to work without any change of functionality.
- Main owner of the Flux legacy platform built with Golang.
Technologies used: Golang, MySQL, Google Cloud Storage.
Tacit Knowledge Latin America., Guadalajara, México (October 2015 - November 2017)
VP of Engineering
As a VP of Engineering for Tacit Knowledge Latin America, I’m responsible for the engineering excellence and success of our consulting projects. I’m also responsible for the growth of our engineering staff. Besides this I’m also involved in day to day consulting work. Some of my main accomplishments during my tenure as VP include:
- Worked closely with the CTO and directors to define our corporate strategy.
- Work with the leads of the different teams to solve engineering and people related issues.
- Re-engage employee collaboration and knowledge-sharing by implementing weekly lunch and learn sessions.
- Led the implementation of a company wide Tacit Knowledge blog.
- Improved our local community presence by co-organizing the local Java User Group meetup.
- Participated in multiple speaking engagements in the local JUG community and the eCommerce community.
Project X, Major Retailer
- Consolidation of multiple legacy loyalty programs into a single unified one.
- Architecture for new offers and account management sections for major retailer website using ReactJS.
- Tech led design and implementation for the following functionality:
- Front-end architecture using ReactJS, React Router and RequireJS.
- Loyalty point redemption during checkout process.
- CSV report generation for returns and partial shipments.
- API for accessing CMS content from React app.
- Mentoring and guidance to more junior members of team.
Returns Plus, Newgistics
- Implemented backend services using Spring Boot.
- Implemented React components for complex forms.
- Tech stack: Spring Boot, Hystrix, ReactJS, Redux, Babel, MySQL.
Tacit Knowledge Inc., San Francisco, CA (2011 - 2015)
Senior Software Engineer
Simpson Strong-Tie PIM/WCMS
- Implementation of B2B solution including Product Information Management (PIM) and Web Content Management System (WCMS) using SAP hybris platform.
- Designed and implemented a flexible and robust solution for Simpson’s complex product model which included over 300 unique attributes and over 15,000 SKUs.
- Designed/Implemented custom bulk product import mechanism.
- Implementation of hybris WCMS, including custom templates and components.
- Implementation of Solr search with faceted navigation for products, content, literature and video assets.
- Designed and implemented integrations with the following systems:
- Okta SSO service.
- Homegrown PLM system.
- Widen DAM.
- Worked with DevOps engineer to implement fully automated continuous delivery pipeline with hybris rolling deployment.
Target, iPad App Redesign
- Tech lead for one of 2 scrum teams responsible for the implementation of the redesign of Target’s flagship iPad app.
- App was successfully launched on time and was directly responsible for huge gains in conversion rates (3x) and revenue (2x) during Black Friday, compared to last year.
- Built features including: new popover based categories navigation, services menu, category landing pages, weekly ad grid, and feature toggles.
- Implemented the base framework for UI testing using Appium with Ruby and RSpec.
- Fixed around 150 legacy broken test cases.
- Worked closely with DevOps engineers to implement an iOS continuous delivery pipeline.
Audi (via AKQA), Progressive Retail
- Tech lead and key contributor to the success of the pilot program as well as the national rollout for the Audi Sales Assist hybrid iOS application, for Audi USA Dealers.
- Finished project on date and under budget, with praise from both the client and the end users (Audi USA dealers).
- Led architecture design and development of a hybrid iOS mobile app using Adobe AEM.
- Some of the implemented features include:
- Side-by-side comparison of different Audi models.
- Audi multi-year catalog.
- Incremental content updates without updating the iOS app using AEM Content Sync.
- Designed and implemented backend components for consuming external web service for car comparison functionality.
Nike, Library Project
- Developed and executed performance testing strategy for Nike’s Custom DAM solution.
- Analysis, design, and execution of performance testing scripts using JMeter.
- Wrote JCR-Mock framework for mocking of nodes on a JCR repository (https://github.com/tacitknowledge/jcr-mock).
- Used Vagrant and Chef to setup development environments.
- CI and build process setup using Jenkins and Maven.
Tacit Knowledge Inc, Guadalajara, México (2008 - 2011)
Navigenics, Flexible Billing Project
- Led architecture design for flexible billing enhancements to Navigenics existing ecommerce platform.
- Provided guidance and mentoring to team that spanned across several of our offices in Mexico, Moldova and the US.
- Technologies used: Apache Wicket, Google Guice, Hibernate, Spring, Maven, MySQL 5.1.
HEB, Click and Brick
- Implementation of ecommerce backend services for HEB’s website.
- Implemented communication with POS systems via JMS Message Bus.
- Implementation of ATG content personalization (via content targeters).
- Technologies used: ATG, Tibco message bus.
Converse, Fast Follows
- Tech lead for offsore development team for new content features for converse.com.
- Implemented new content cartridges using Endeca’s PageBuilder tool.
- Provided technical guidance and mentoring for team developers.
- Technologies used: Endeca (Page Builder), .NET, .NET MVC 2, NHibernate, T-SQL, Slideshow Pro.
Converse, Site Refresh
- Implemented backend services for the redesign of converse.com.
- Designed and implemented APIs for faceted navigation and search using Endeca search engine on top of existing .NET platform.
- Technologies used: Endeca, ASP.NET (C#), T-SQL, shell script.
Williams-Sonoma Inc., WCM
- Designed and implemented back-end solution for WSI’s brands, using Day’s CQ5 Content Management System.
- Wrote workflow components and JCR Listeners in CQ5.
- Development of advanced CQ5 components like bulk editor for operating on multiple skus.
- Wrote content migration scripts.
- Technologies used: CQ5, OSGi, JCR, ExtJS.
Kodak Gallery, Slideshow
- Developed Kodak Gallery’s Slideshow using Adobe Flex as a frontend platform and J2EE for the backend services.
- Created Flex UI on top of the cairngorm microarchitecture.
- Created backend services using Webwork framework.
- Technologies used: J2EE, Java Webwork, Pico container for DI, Adobe Flex, Cairngorm.
Softtek, Aguascalientes, México (2007 - 2008)
General Electric, Site Builder 2 CMS
- Developed Site Builder 2 internal CMS web application for General Electric.
- Fronted built using Adobe Flex 3.
- Wrote backend XML web services using Java.
IBM, México (2006 - 2007)
Software Engineer, QA Engineer
AS400 Commands Development and Maintenance
- Maintenance owner for AS400 commands: RTVDSKINF, PRTDSKINF, RTVDIRINF, PRTDIRINF.
- Fixed bugs and implemented new features, using a combination of the following languages: C++, CL, SQL, PLMI.
I was the main author and maintainer for the JCR-Mock library for mocking JCR compliant repositories.
Burning Man 2013 “Hands” Art Installation
- Single handedly designed and build electronics using Arduino prototyping platform and individually addressable LEDs.
- Implemented system to communicate Arduino microcontrollers with iOS devices using RedBear Labs’ BLE Shield.
- Wrote iOS application to interface with LEDs by means of sending commands via Bluetooth.
- Wrote iOS custom drawing UI using Core Graphics library to interface with LEDs via Bluetooth (https://vimeo.com/72212981).
Maquinet Cash Monitor
- Cash monitor for internet kiosks, comprised of two components: a daemon which runs in the kiosk (written in Java) and a web application (written in Ruby on Rails).
- Responsive web site with dashboard with graphs built with D3.js (nvd3).
- Created Vagrant setup using chef to configure and provision both development and production environments.
- Kiosk authentication to server using SSL client certs.
Education & Training
- Bachelors degree in Electronic Engineering from ITESO (Western Institute of Technology and Higher Education) in Guadalajara, México.
- Sun Certified Java Programmer (SCJP)
- Proficient in the following technologies:
- Kubernetes, Helm
- Linux, Mac OS X, Windows, iOS
- SQL Server, MySQL, PostgreSQL
- Adobe AEM (CQ5), Endeca, ATG
- Frontend: React, JQuery, D3.js, Ext JS
- Terraform, Chef, Vagrant, Jenkins
- Git, SVN