Profile site
Getting To Know Me, Getting to Learn All About Me
I like patterns; taking abstract ideas and bringing them into the world of the ‘real’ in order to help people get more done and have more fun.
I have taken on diverse roles and responsibilities throughout my career. From individual contributor to systems architect.
I am seeking a front-end focused Principal Software Engineer, Tech Lead, or Staff Engineer position. For the right company, that will support me in furthering my career, I am happy to take a Senior Developer role while I learn your business.
My ideal company is past the early startup stage, with developed processes, strong leadership, and a clear strategy and long term vision.
I am a big believer in agile methodologies and iterative delivery, offering both the opportunity to fail quickly, the motivation to succeed, and the incentive to constantly strive for quality code.
The ideal culture for me is one where everyone — particularly leadership, product owners, and managers — is heavily invested in the success of the company, the quality of their work, and personal growth. But also one where work/life balance is emphasized and tight deadlines don’t translate into a high pressure, high stress environment or death marches.
I strongly prefer to work remotely, but am able to make myself available for on-site meetings as long as they are near my home in the greater Washington, DC area.
Check out my Resume and LinkedIn profile, if you want to know more about my skills and the work that I’ve done in the past.
Keywords
In alphabetical order, a keyword dump of technologies I’ve worked with over the years:
.net
4gl
adobe aem
adobe ecm
akamai
android web browser
angular
angularjs
animation
api
artifactory
asp.net mvc
backbonejs
backend
backgroundworker
bash
bdd
bitbucket
blueprintjs
bootstrap
browser plugins
bulma
c#
c++
chai
chrome plugins
circleci
cisco routers
classic asp
compass
confluence
cookies
cross-browser compatibility
crucible
css3 flexbox
css3
css
cvs
d3
day cq4
day cq5
debugging
dhcp
dns
docker compose
docker
dom-testing-library
echarts
edgecast
electron
end-to-end testing
envox
enzyme
es2015
es5
es6
esnext
etl
exchange server
express
fogbugz
frontend
full stack
git
github issues
github pages
github
gitlab
grunt
gulp
hackathon
hibernate
homebrew cask
homebrew
html5
html
ibatis
immer
integration testing
intel dialogic
intellij
ivr
java
javascript
jcr
jenkins
jest
jetbrains
jira
jpa
jquery plugins
jquery-ui
jquery
jsunit
junit
knockoutjs
laravel
less
localstorage
macos
mercurial
metaprogramming
microservices
mocha
ms access
ms sql server
mui
mvc
nginx
node
normalizr
novell
npm
nunit
nvm
orientdb
osgi
osx
performance optimization
php
postgresql
pwa
ras
raw tcp/ip sockets
react
react hooks
react-redux
react-router-redux
react-testing-library
reactjs
redux
redux-sagas
redux-toolkit
remedy
reselect
rest
rollup
rxjs
sass
scss
scrum master
scrum
secure coding
selenium
selenium webdriver
server-side rendering
serviceworker
session storage
sinon
sling
smtp
spa
spring
spring boot
spring data
svn
tab hibernation
tcp/ip
tdd
third party javascript
tinkerpop
tsql
typescript
unit testing
user experience
user interface
vb4
vb5
vb6
vba
vbscript
vscode
webpack
websockets
webworker
windows 10
windows 2k
windows 7
windows 8
windows 95
windows 98
windows nt
xml
xslt
zsh
zurb foundation
Basically, I’ve been programming since I was a kid. I have the longest and closest relationship with the Javascript programming language. Based on my mastery of it’s C-style syntax and experience with application development, I quickly picked up programming Java and C#, and soon became aware of more rigorous ways to go about solving problems than are typically associated with Javascript.
At the same time as I like to be conscious of design patterns and algorithms, my roots as something of a ‘cowboy coder’ mean that I can get things done and think outside the proverbial box.
While I’m versed in many of the latest frameworks and libraries like React, React-Redux, and Redux-Sagas, I don’t use the latest and greatest just because it’s cool. That’s not me. I evolve existing legacy systems into the future, and I want to use the right tool for the job. Sometimes that means building out your own tooling, embracing functional programming, meta-programming, and more.
Videos which demonstrate products and projects I have worked on.
View all my repos and the repos I’ve forked.
An ES6 implementation of a deck of playing cards, including mix-ins, base classes, and more. In addition to implementing a standard deck of playing cards, the code is extensible and can be used as the basis of any kind of card deck.
As this is base code which doesn’t include any implementation using the classes the demo site shows information for various project metrics such as code coverage and complete report of test results. The test results reporting is done using React components.
A React UI using CSS3 Flexbox, showing an implementation of shuffling and dealing using the deck-of-cards code. Also allows for changing the card face design between the English pattern and a Russian “Atlas” design.
An ACID Trail is a sequence of colors and/or color names which is generated from arbitrary data and can serve as a unique identifier for that data, and especially a particular version of that data. Distinguishing between different versions of resources (e.g. files, records) which have the same “base” identifier is a difficult problem. I attempt to address this problem by using colors which are not randomly generated but rather generated as a representation of the data to create. Identical versions of the same resource would have the same ACID Trail identifier.
This implementation utilizes ES6 and WebWorkers for the logic and code structure, and React/Redux and Bootstrap for UI.
A (much) earlier version without ES6, WebWorkers, React, etc. is also linked below.
A small javascript puzzle game which implements the ‘tower of hanoi’ also known as ‘lucas tower’. Designed so it can be embedded easily as an application easter egg :)
medium@j5cookie and j5bot.blogspot.com
I am not an extremely active blogger, but the items I have written should help demonstrate my communication skills as well as my approach to problem solving.
Some of my works as a poet.