Experience

Currently working for youreadfor.me, an audiobook self-publishing platform.


Sometimes I’m maintaining and contributing to open source:


Below are some of the teams I was a part of.

Do you know how to use _____?

Each employer asks if I know how to use about a half dozen languages, frameworks, or libraries. After I have used hundreds the answer is going to probably be “Yes.”

The first few minutes...

Q. Do you know JavaScript?
A. Yes

Q. Do you know Angular?
A. Yes

Q. Do you know React?
A. Yes

Q. Do you know CouchDB?
A. Yes

We can do this all day. It’s impersonal, not that relevant, and the more I say “Yes” the more threatened team members feel.

There are thousands of options in every language and each company uses different tools. Wouldn’t it make sense to hire based on some other quality than having the same exact experience as your existing team members?

If the specifics of what I use is important after all please view my npm favorites and my GitHub repos.

Can you help us attract and interview the best candidates?

I’ve been interviewed and interviewed others successfully many times. I enjoy it and I’ve received compliments from coworkers who liked my engaging and positive style of interview.

The youth don’t always care if they have a job or not. The trust in the elders of society is gone. If you need to get young people on a team is acting as a stern, disinterested, bored expert appealing to them? Definitely not. That is how the Boomers did it but we don’t have to.

I suggest using the opportunity to learn about a candidates goals and who they are fundamentally. What is their value system and what part of the tech got them interested to persue a career in it?

Can they whiteboard some diagrams how they might structure a system? What technologies would they choose and why? Do they have the humility to say “I don’t know” if I have stumped them with my questions? Better yet can they ask me how I would solve the same problem if they are unsure? That is equally important. Can they sit for a while and do pair programming with me?

If you see where I’m going the key is curiosity. They don’t have to know all the answers. The more targeted questions and pertinent answers they can provide with confidence and accuracy the higher rank of developer you’re speaking with.

Can you help us ballpark financial expenses related to the tech?

Yes. I go for the most accurate estimate I can make without padding. That doesn’t mean I don’t factor in emergencies or overages. It just means that I will give it straight and other team members can choose to pad up or negotiate it down when appropriate.

Disney robotics team consultant

The goal was to build a multiple trace digital oscilloscope. (I also had no idea what that meant until I started working on it.) It helps diagnosing robots and rides for guests at the parks so it’s safe. Beyond that I was asked to be flexible and look for ways to contribute.

Photos

An example of using a variety custom controls like tabs, button, and dropdown.
A simulation of the feedback a robot generates.
This is an idea I suggested to the team, if something we were talking about was too abstract, we can draw it.

Videos

Demonstrating the newest CSS3 techniques
Previous versions were having trouble with multiple trace line performance. So I am demonstrating improved performance with many traces.
Later some refinements in line weight and technical adjustments.

If you’re into the tech this app is using all the newest bells and whistles in the browsers to get it doing the above. Imagine each line being a stream of data coming in over WebSockets and being rendered in a 3d graphics library even thought it looks 2d. We really needed the performance from the graphics card. It truly is amazing how our team pushed the limits of what is possible in a web app. I was proud to make a contribution there.

Aetna iTriage insurance apps consultant

Their web architect quit and they needed someone to fill in, instrument iTriage v1.0, continue progress on iTriage v2.0, and help interview new team members. There were many ways to contribute in their organization and they were eager to entertain my proposals for improvements.

The first thing I set to doing was negotiating with multiple teams to fix the build process and the Jenkins CI. Being in a large organization you don’t unilaterally decide you’re going to fix something. Each team must come to consensus and justify to a panel the expense for any given proposal. I spent time with each group discussing the reasoning for build optimizations. This move was successful and accelerated build times and enabled front-end and testers to contribute more frequently and receive instant feedback for problems.

That is one example of many challenging negotiations. Lets get to some photos then if you’re interested to know more about that experience we will discuss it. It was a good learning experience for all of us socially and technically.

Photos

iTriage v1.0 "Point where it hurts" guy
This was actually a diagram I presented on what not to do. The hierarchy of dependencies was not good for our build.
Annotating the UI for team members, browser Location API, Google Maps API
Our threshold for coverage was about 60% but I spent a night at the office and raised it up to 100%.
We got all these custom controls from UX team and meticulously coded the CSS for pixel-perfect UI.

More

I’ve been fortunate to be able to contribute to a lot of important projects since 2001. I’m grateful for each idea I get to help bring to fruition. If you have questions or want to describe something you’re working on I am happy to discuss options. Thank you

Contact