Hiring for HELL YES!

Hiring is a critical component of many of our job functions. A great interview process allows for the candidate to be pumped about the role and the company, while also allowing you to see whether they would be a great fit. It may not come to anyone’s surprise that interviews is in many situations a process that doesn’t get a whole lot of love. But like many of our other skills, you need to practice, refine and continue to refine to become good at it. It’s of my belief that all interviewers meeting with the candidate should be ready to say HELL YES to consider moving them forward or even making the offer. Some of the best interviews I’ve done in the past are those where the interviewers had a clear framework to determine whether the candidate got a “HELL YES”! I’m sharing mine.

Let’s face it, we are emotional beings and interviewing can often be more of a subjective exercise than an objective one. Many of us like to pull questions from our head and can have somewhat of an idea in our minds on what that ideal candidate may be. If the candidate does multiple rounds, this often leads to many of the same questions coming up, but also with a mixed set of expectations. Often due different expectations amongst interviewers or a need to revamp the interview process.

Continue reading…

For the love of data, invest time in it!

For most, data is as valuable as gold. Often, it isn’t treated as such. Why is that?

I’ve often referred to data as that love hate relationship that many of us have had with school. It’s something that many of us felt that we needed to do just enough to pass, whereas others felt they needed to go above and beyond to get top marks. Who’s the winner here?

Continuing with the school analogy, those who did enough just to pass is the equivalent of spending just enough time on your data for features to work. Whereas those who would go above and beyond, are likely over engineering their data to do everything and the kitchen sink. The reality is that neither are likely to be where you want to be, although in my experience you want to edge closer to having it all to put your teams into overdrive.

Continue reading…

Home Automation

I haven’t written in a while. As you may imagine, life has had a lot to do with it. But the other large contributing factor is the time I have invested into building out a (sweet) home automation system.

I’d love to say it is done, but let’s be honest, is any product ever done? The reality of Marvin, as I am calling my home automation, is that it is in a somewhat functional state. To date, it does a lot of the basics, with nothing more than a few minor bugs. As with any other product, I am prioritizing some of these bug fixes for later.

Here are some of it’s current capabilities:

  • Control Switches (On and Off)
  • Trigger Predefined Routines
  • Display Contact and Tilt Sensor status
  • Control Alarm (Armed, Home, Disarmed)
  • Control Locks
  • Control Garage Doors
  • Control Thermostat and View Temperature
  • Weather and 1 day Forecast
  • Control Entertainment through Spotify
  • Display Reminders and Events

Though the list of capabilities is expected to grow over the next few weeks or months, the above is enough to control at least 90% of my devices. Controlling switches is enough to turn lights on or off, displaying contact status used to display whether doors are open or closed, or the reminders and events used to show garage pickup information from the municipality.

Here is a short (and far from exhaustive) demo of what it looks like so far:

From here, I am looking to focus on entertainment, ensuring that those devices work well together, that mood is more easily set, and that rooms can be better defined and easy to navigate between. The ultimate goal being that this is a system that will compliment our lives and make things better.

My stretch goal, one that I constantly keep at the back of my mind: is there a possibility of making this publicly available. Short answer is yes. Hint: Check out my featured image to see just how easy it is for me to add a fully functioning tile/

Finances: Marvin’s first skills

With Marvin’s core architecture designed, I started developing the framework.  The framework itself is intended to handle multiple use cases, from supporting personal information to provide contextual experiences to controlling devices.  Marvin’s key differentiator is that it is powered by data, rather than a simple trigger based on an action.  This is why the core of the framework contains APIs that handle data and extends itself into building out analytics.  Behind the scenes exists an ETL process that feeds into various services, including machine learning.

I’ve been feeding the last 7 years of financial data through to Marvin’s core databases, with just over 9000 transactions. The transactions look something like this:

Date Description Original Description Amount Transaction Type Category Account Name
6/22/2017 Ooma OOMA, INC 08887116662 CA XX.XX debit Home Phone Smart Cash Platinum Plus MasterCard
6/22/2017 Costco COSTCO WHOLESALE W159 AJAX ON XX.XX debit Home Supplies Smart Cash Platinum Plus MasterCard
6/21/2017 Transfer to Chequing TRANSFER OUT XX.XX debit Transfer General Savings
6/21/2017 Transfer from General Savings TRANSFER IN XX.XX credit Transfer Chequing
6/20/2017 Costco COSTCO WHOLESALE W1128 OSHAWA ON XX.XX debit Groceries Smart Cash Platinum Plus MasterCard
6/20/2017 Costco WWW COSTCO CA 905-264-8337 ON XX.XX debit Sporting Goods Smart Cash Platinum Plus MasterCard
6/20/2017 Taunton Endo TAUNTON ENDO OSHAWA ON XX.XX debit Doctor Smart Cash Platinum Plus MasterCard

These transactions provide a very good base for generating some initial learning models. By including credit or debit, dates, retailers, amounts, categories for purchases and labels, it enables various types of skills to be identified.  These skills help me understand my finances better while also helping me improve.

Continue reading…

Disruptive Companies, Passionate Teams

I’ve come to the realization that I like companies that try to disrupt a market. Whether it be phones, IoT devices, or software. Love rooting for the next up and coming success story, even if it means some growing pains along the way. I tend to be a very passionate person when it comes to technology.  I find myself pouring over details, specs, and features with each new thing. It’s rewarding to engage their teams over the details, as you get to see their drive and dedication.

The products trying to disrupt the market are often ones that bring in their own special flare. Even though they may not offer all the same features as the industry leaders, you can tell they are making a difference through the details. The communications coming out of these teams show their passion.  They don’t often generate hostility. As a result, their message tends to be softer and they normally try to rally others to join them.  As a result of a more neutral tone, hoping to rally people together, you often find that these teams often offer the best support. With good support comes a good and lasting impression on the market, because the best form of marketing is word of mouth.

Because of my passion for technology and great products, I often find myself going out of my way to find these new and upcoming products or technologies.  Over the years, I’ve bought into or crowdfunded numerous products that were either help achieve a personal or professional need.  I don’t always buy into products solely for the product itself, I often do it for the experience and the support. I’ve had the opportunity to follow a number of companies who were just starting out to flourishing into companies now competing against some industry leaders or going through large acquisitions. These teams were huge on gathering feedback and interacting with their communities or “evangelists”.

Continue reading…

Marvin: Automating my Smart Home Devices

Part of the process of designing Marvin is to carefully ensure that all devices within my home fit well into the ecosystem.  I severely underestimated the time it would take to carefully plan out each part of my ecosystem.

I’ve started buying and implementing smart home / IoT devices over the last year or so. The devices were implemented with the idea that they will all be managed a central device / hub in the future.  For a while, my hub of choice was the Wink Hub. But as smart home hubs evolved, SmartThings continued to get better.  While Wink is a terrific hub, SmartThings allows for far more complex automation routines or even create your own SmartApp.

While the hub itself was a difficult choice, the other devices were not a whole lot simpler unfortunately.  For one, I’ve been avoiding maintenance costs, as some devices have, like Nest Cams. Secondly, I tend to go for devices that support Windows devices as much as Android and iOS. Thirdly, the devices need to be user friendly enough that I would enjoy tinkering with it. Lastly, I try to choose devices that have mostly favorable reviews.  For devices to meet all 4 requirements has been surprisingly difficult.

Continue reading…

Should Products Ensure Developer Happiness?

Over the past while, I’ve been fully immersed these days into figuring out how to build Marvin.  In doing so, I’ve been researching products, services, or even technology that would help me do it. While diving into each one and evaluating whether to proceed in using them, I’ve found myself looking for the very same thing in each one.  That is, are they working to ensure their developers are happy?  Would I be happy working with them?

One of the biggest gaps that I’ve been looking to fill is the financial transactional information.  To do that, I’ve been evaluating Plaid, Xignite, Yodlee, and Finicity.  All are very capable and established services.  However, of the 4 services, Plaid is the only one that makes me feel that they care about developers. They have a healthy set of SDKs, great documentation, and their dev portal is welcoming.

Companies from all over are beefing up their engineering and development teams.  In many of those technology focused companies, the decision makers are those who are working directly with the product or service, the developers.  Developers normally choose the product that is the most effective at helping them achieve their goals.  Many products today continue to focus on selling to the business minded person, focusing on the features and pricing.  While that is certainly not a bad strategy, they tend to completely avoid the developers who would be working with the product or service.

I believe we are reaching the tipping point where you need to appealing to developers and their happiness in order to succeed. Many products brand themselves as a platform, normally with some externally facing API.  Those that don’t have an API likely have it near the top of their roadmap.  The API can serve multiple purposes: to bring a richer experience, to share data with other tools, or to build new functionality which isn’t supported within the parameters of the service. The market is flooded with technology companies, each trying to cater to a niche. While that company is using your product or service, their goals may be different, which is why they look for API access to enable them to perform their own business logic.

Continue reading…

Marvin – Personalized and Smart Virtual Assistant

Over the last two years, I’ve been buying into Internet of Things (IoT) devices. While the devices themselves may be smart, they do not make a smart home.  In comes Marvin.  Unlike many who have gone for Jarvis as a name, I chose the name Marvin from Hitchhiker’s Guild to the Galaxy. Marvin has a brain the size of a planet, which is fitting considering the information it will be processing.
Continue reading…

Communication is key. Why you should work on effective communication.

Several months ago, I had an employee review. I was relatively new at Avanti at the time. There wasn’t a whole lot at the time they could provide on my review.  I did however get very valuable advice.  Advice that I’ve taken to heart. I need to improve my communication.

I’m coming out here by saying my manager was absolutely right. I’ve known all along that communication was one of my weaker qualities. The fact that someone has finally told me that I should improve was welcomed. For those of you who do not know me, I thrive on criticism. Constructive criticism of course.

Continue reading…