Daniel Deflavia
Full Stack Engineer
Full Stack Engineer with 8 years of IT experience including exposure to Linux, Apache, Nginx, multiple SQL dialects (PostgreSQL, MySQL, MS SQL), NoSQL/Graph
database platforms, JavaScript, Node.js, Ruby, PHP, C# and C++. I am a candid advocate of event driven programming and support working with the newest technologies
in event handling and I/O concurrency. Most of my personal projects are inspired by libraries such as Node.js, EventMachine and the Reactor Pattern in general. I appreciate
the flexibility native Event Loops bring to test driving prototype chains and the performance benefits of deploying asynchronous versus multi-threaded architecture.
My experience is inclusive of working within communities of like-minded developers, interesting mixtures of young businesses and startups, software development agencies and
open-source projects. I have a proven track record of completing task work quickly and accurately. I don’t mind putting in the extra hours and enjoy working in self-managed
distributed teams, tackling challenging obstacles, learning new skills and languages.
Work Experience
Feb 2018 - May 2018
Contact Information
Backend Engineer – Rebls, Inc.
Node.js, Rust, PostgreSQL, PostGIS, MongoDB, Elasticsearch, Ubuntu
In collaboration with their engineering team, refactored and improved asynchronous
architecture in the process of building technology used for plot analysis and brokerage.
Assisted in the integration of sales oriented pipelines with new architecture, defining
valuation principles of plot usage, TDD of services responsible for consuming GIS data
layers with Esri compliant deployment patterns and assisted in the continuous integration
of sales features with a consumer facing RESTful API including ownership discovery,
SDR lead management, plot scoring and MapReduce operations for bridging parcel
data from public sources. Reduced time complexity of aggregations used by their
proprietary software for generating accurate market values of parcels and assemblages.
Aug 2015 - Aug 2017
Full Stack Engineer – Rexsi, Inc.
Node.js, React, PostgreSQL, PostGIS, DynamoDB, Elasticsearch, Chef, AWS
Responsible for driving an MLS search platform to production stages with micro-service
architecture in a diverse set of deployment scenarios including a consumer facing
RESTful API supporting multiple OAuth2 exchanges, Real Estate Transaction Standard
compliant application layers featuring a DBAL with eventual and consistent read/write
IO support for DynamoDB and Elasticsearch, a Redis Messaging Queue as well as a
Process Management System written in Node.js. Optimized their search and analytics by
migrating from MySQL to a DynamoDB/Elasticsearch data model and cut operational
costs by off-loading data consumption to auto-scaling clusters deployed with Chef/
Docker.
Jun 2014 - Jul 2015
Application Developer – GIZMO Creative, Inc.
PHP, JavaScript, EXT JS, MySQL, FreeBSD
Collaborated with mobile developers as part of their back-end team in building a SaaS
solution for subscription based technical support (remote/on-site) with applications
installed by default on current generation Point of Sale devices in partnership with POS
manufacturers and available in iOS/Android app stores. Assisted in the continuous integration of device triggers with a custom MVC framework written in PHP and extended
an EXT JS CRM to support hardware discovery and permissive callback hooks used in
correlation with device telemetry to predict and automate call outcome solutions.
Sep 2012 - May 2014
Full Stack Engineer – Keys Realty
Node.js, PHP, MySQL, Puppet, Ubuntu
Brought on to install topology for a portal system deployed across satellite locations with
an infrastructure delivery system using VMWare and Puppet. Extended an existing subscription driven SOAP API used by MS Forest Domain Controllers and Exchange servers
to support bindings for an SMS gateway. Facilitated deployment procedures by producing migrations, test suites and most of the scaffolding used by their internal REST API.
email:
phone:
website:
-
intovpc.com
Education
Object Oriented / Procedural Programming – Zend Certified Engineer
Established OO/Procedural best practices
in different areas of developing applications in PHP 5.3. Preparing for the exam
implored me to learn quite a bit about the
inner workings of PHP and research into
areas I hadn’t needed before. It’s given
me the ability to look at projects from
many different angles and aspects of the
language.
Business and Engineering – Pennsylvania
State University
Focused on the business side of a technical
company with business related purpose
and in-site. Course work involved design
methods, systems design, design for human variability and design cognition (decision making) with emphasis on achieving
optimal design solutions for products,
systems, processes, and services.
Daniel Deflavia
Full Stack Engineer
Oct 2011 - Jul 2012
Database Administrator – VIDD Consulting Group
Contact Information
Graph Databases, MySQL, Gremlin, Linux
Assisted their Data Science team in producing tailored analysis on data collected from
affiliate organizations, using Gremlin Graph traversals and complex SQL queries to plot
relationships between aggregations. Responsible for test driving the continuous integration of model designs supporting a growing number of data structures.
Background
JavaScript
Experienced with TDD in building low level test suites with Karma as well as running user based end-to-end
integration tests with Protractor. I’m familiar with writing nested callbacks to complete asynchronous assertions as
well as Promises to register callbacks for eventual state change notifications. I’ve found the flexibility of chaining
Promises much easier to work with overall, than CPS patterns which in my experience, increases the complexity and
amount of logic needed when prototyping asynchronous architecture.
I’ve become adept at prototyping components quickly and have exposure to platforms incorporating MVC concepts (data models, views, event dispatching) including directive based frameworks such as AngularJS and Vue.js.
I’ve also refactored existing JavaScript/Ajax heavy PHP application with Backbone.js which was particularly ideal
in a scenario involving rich application features because of the low-level API exposed, allowing us to port existing
functionality as needed without effecting release cycles following an initial MVP.
Node.js/React/React Native
I’ve been present on several Node.js/React projects recently that involve public facing web applications, RESTful
APIs, micro-services and device firmware statically linked with C++ extensions. Throughout testing with multiple
engines, producing suites with Jest have integrated well with Promise chains and the engine has a simple configuration, component snapshots and assertion library with Babel support built in. As a result of test driving asynchronous
architecture with native ES6 Promises and Async functions, I’ve begun to incorporate both when writing application layers. I find destructuring assignments using flat Await nomenclature with Promise methods accepting
iterables to be an expressive and efficient unit structure I find myself writing a lot of because it eliminates most of
the asynchronous anti-patterns originating from earlier versions of the ECMAScript specification.
I’m familiar with deploying API gateways in conjunction with Jenkins for continuous integration of micro-services
written in Node.js and software stacks incorporating MVC design patterns using Express and React. I prefer the
component abstraction provided by React over directive based frameworks and appreciate the unidirectional
data flow of higher-order life-cycle patterns when test driving prototype chains and element trees because it
promotes data normalization ultimately leading to increased performance and predictability, proven especially
useful with Reactive backends when pushing GraphQL change sets to clients. With the exposure I’ve had to Native
Android/iOS integrations, deploying cross-platform applications with Real Time capabilities loosely coupled with
a GraphQL API layer was relatively seamless due to React’s predictable data flow and the GraphQL components
available.
Ruby/Rails/Chef/Puppet
I have extensive experience working with Ruby on projects I’ve contributed to in the past for infrastructure automation with Chef/Puppet, distributing company software bundled as Gems and full-stack SaaS solutions built with
Rails. I’ve produced test suites with both Rspec and minitest/unit as well as minitest/spec. I’ve rarely used Rspec
because of the minitest gem available in the Standard Library and the spec expectations provided by minitest/spec
serving great as a compact replacement for Rspec DSL.
email:
phone:
website:
-
intovpc.com
Daniel Deflavia
Full Stack Engineer
In production, I’ve commonly used Ruby out of preference because it exposes object oriented design principles and
has implications inspired by multiple languages. In addition to experience producing RESTful APIs with Rails for
consumer facing architecture and Chef for deployments that involve complex unit integrations, I also use Ruby in
most of my personal projects because I can write familiar unit structures and have flexibility in deploying enterprise
stacks using a single language across both architecture design and infrastructure delivery.
C#/C++/LLVM
I’ve been exposed to C# console and .NET framework applications deployed on MS Forest Domain Controllers
running IIS Web Servers and have studied other Clang and LLVM compilers as well including g++/C++ and rustc.
I enjoy writing units with Rust compared to other static typed languages because it’s syntactically similar to C++,
but safer to implement with it’s ownership and lifetime guarantees via accurate stack/heap allocation and borrow
check. In addition to Rust also being portable and built with LLVM, I’ve found unit and integration testing executable binaries and libraries respectively to be straightforward and organized using the testing facilities included.
I usually enjoy introducing static typed languages and working with existing interfaces. I find C++ and LLVM derivatives particularly useful when linking package interfaces with dynamic counterparts and have seen a lot of benefit from compile time checks specifically when working with large data sets. I’ve also seen dynamic approaches to
static typed units with favorable outcomes which is interesting considering the pace in which project solutions evolve
and whether choosing a static typed language increases overall code accuracy compared to dynamic alternatives
in which broadly accepted principles from multiple languages can be applied using a single unit or expression,
decreasing the amount of logic necessary to achieve the same or similar results.
PHP
My experience with unit testing extends mostly towards Zend Engine running on Debian Linux systems. I’ve also
worked for teams with investments in CentOS, Fedora/Redhat and OS X Server. My test driven development
suites are usually implemented with supporting MVC frameworks including Zend and Symfony because they
provide productivity tools to assist in writing tests against their component structures with. I’ve used PHPUnit first,
to check for eventual functionality, then writing the code to pass however. In my experience, driving test coverage
without application code can often result in self-contained tests.
I have extensive experience working closely in teams building component based architecture using object level
abstraction with standardized principles (SOLID, DI, SoC) and continue to appreciate efforts in full object model
support including anonymous classes and balanced exception handling in newer releases of Zend Engine. I have
some exposure to extension development in porting package APIs as well as core modifications which have been
useful for tracking memory leaks.
Database Administration
Experienced with producing capable RDBMS data models and off-loading aggregations with NoSQL architecture to application specific pipelines indexed with Elasticsearch. In utilizing Maven for cross-platform integration
testing, executing SQL queries directly via client interfaces and driver implementations (PDO, JDBC) have proven
to be more optimized and configurable in terms of memory consumption and throughput allocation compared to
ORMs and DBALs supporting multiple drivers, however. Scaling domain layers that require driver agnosticism
can be challenging without an additional abstraction layer. I’ve found sacrificing performance over re-usability of
business logic can often be circumvented by deciding on a single platform or refactoring codebases into dedicated
micro-services.
I’m efficient with most SQL dialects including PostgreSQL/MySQL/MS SQL and have had the opportunity
to participate in projects incorporating NoSQL architecture implemented with Document Databases including
MongoDB, Elasticsearch and DynamoDB. I’ve also explored the possibilities of GraphQL API layers including
Prisma and Apollo, serving Reactive backends to Real Time enabled Web and Mobile clients as well as ORMs that
consume triggers for graph databases such as Titan and Neo4j which are both powerful tools for graphing data
with emphasis on relations themselves rather the data on either side of a relation.
Contact Information
email:
phone:
website:
-
intovpc.com