Internal recruitment done right — we’ve built a 🤖 colleague for dev team

Docler
Byborg Engineering
Published in
5 min readSep 1, 2020

Written by Vastly

Yes, a robot! As you will see further, it is not very much anthropomorphic, but anyway.

I am an engineer in IT company with more than 1000 employees. Our web sites get millions of hits daily, we maintain a gigantic ecosystem of microservish applications, and so on. Sometimes, things just go wrong. Application bugs, wrong configuration, hardware failure — everything can become an accident which requires immediate action from developers on duty. We call such an accident a hotline (famous book calls it a page). Each hotline is tracked using an email thread. Relevant on-call people from different departments use this thread for coordination and status updates while solving the issue.

Why we would need a robot colleague?

First, it is impossible to read emails instantly. Second, some of the hotlines are not directly relevant to our small team. So, we would like to highlight hotline threads which are directly relevant to our team, and ping the teammates immediately.

In early days, a sentry was in charge of such a task. Once the horde of enemies appears on the horizon, vigilant sentry notices it and reacts immediately. Is it possible to automate it away with a simple robot nowadays? Assuming you have some thick printer paper, folding experience and adventurous mood, it is practically a low hanging fruit for you.

Let’s get our hands dirty.

We are going to leverage astonishing Paper Signals project made in Google Creative Labs. Paper is flesh and bone of our robo colleague. Building your own Paper Signal is the first step here. After that, we will add some custom behaviour on top to make the robot serve our dev team needs.

Paper is in the blood of the creature.

Step 1: just create your own Paper Signal.

When you are well equipped and ready to go.

I am sure you will enjoy it. You don’t need any knowledge of Arduino or even programming skills, but be prepared for some origami practice! Everything is explained in a brilliant way through pictures. Just follow the detailed instructions.

Getting the parts

I used the official Paper Signals bundle from Adafruit for 24$ (plus 20$ shipping, plus 19$ customs tax. It is a trade war between Europe and US, isn’t it?). Quickly searched on Amazon and it has nothing. Aliexpress has it, but for 43$ excluded shipping and tax 🤦🏻‍♀️. I am sure that all the components separately are much cheaper than this. Sounds like a blue ocean chance for a humble e-commerce business… will update this story with a link once I launch it.

These are few gotchas I wish to know myself before the start.

  • In the pdf to print it is mentioned that you need to print at 100% scale, and don’t scale to fit. This is crucial indeed. I accidentially printed it wrong for the first time, and had to start from scratch. This is how things looked when printed wrong:
Make sure to print at 100% scale.
  • You can completely ignore the Google Assistant part from the manual. It is not needed for our goal. Frankly speaking, it has never worked for me.
  • On Arduino libraries installation step, you may need to install previous version of Arduinojson library (version 5), not the version 6, which is the current. At the time of writing, the code of Paper Signals manual is a bit obsolete, and works only with version 5 of the library.
  • Always score all the fold lines with ruler and empty mechanical pencil before you start folding the item.
Score the folding lines in advance.
  • Part 2 (Build Microcontroller Enclosure), steps 1–5 are really easier done without the feather inside, and without wires connected. Just do it at the last step. Yes, I recommend you to violate the official manual by following extra recipe (somewhat Harry Potter did in part VI, Harry Potter and the Half-Blood Prince, during Potions class).

Here are some photos of the process in front of the appropriate stage from the manual.

Just for your inspiration. Proceed only if you are not perfectionist.

Microcontroller inclosed
Using pencil to glue the narrowest corners.
Who can knife out the circle better?🙂
Almost there.

Step 2: Robot is born — breathe new life into it.

Newcomer is here, time for onboarding.

Once the construction part is complete, you are one button away from your own little sentry, vigilantly watching the incoming email threads and notifying you immediately in case of something. I am not going to dive deep into the code, because it is pretty straight-forward. Basic single-endpoint API is created and launched somewhere in the cloud. When called, it uses MS Exchange API to pull the emails and inspect them for hotlines. Robo Arrow pings the endpoint in an infinite loop, and do the show at the right moment by moving the arrow back and forth:

The code is on Github. Of course, you need your own Wi-Fi and MS Exchange credentials. The loop() function there is the only difference from Paper Signals official codebase, and looks like this:

Robot’s brain.

Vuala!

Robot is ready. As you may see, a single paper warrior needs quite a few sweaty hours of construction. Initial idea was to build a personal robot for every colleague of mine and present it to them as part of International Robots Day celebration, but this plan was refined very soon (agile practices in action), and that’s how the one and only mr. Arrow was born.

It is inevitable that robots overtake humans more and more. But never in the field of claps and comments of this story! Please, share your ideas about what else can be solved smart with robotics.

--

--

Docler
Byborg Engineering

Curious about the technologies powering the 30th most visited website in the world, with 45 million users, 2,000 servers, 4 data centers?