This article will not be filled with code snippets, or awesome logic around how to optimise, or examples of how we built and customised the hell out of Kubernetes for GPU sharing.
Instead, I'll shed some light on the role in Veriff we call Technical Support.
The job title is quite straight forward. Technical support is surely a group of techy people, doing support. Simple right? Well, not quite. Often people think of support with certain undertones, and even more often tech support and customer support are all just seen as the same support.
In Veriff, we have an excellent Customer Support team as well. They are responsible for external communication and keeping our customers happy in case of any issue or query.
In our organisation CS is currently part of our Revenue division and Technical Support is in our Engineering division.
The main job of our technical support team is to save time for development teams, so they can focus on what they do best. This is done by being an escalation point for our CS and other internal teams. There are often requests coming from customers where we have functionality but no tooling yet with UI. So technical support is there for these hacky solutions. Not to mention any technical question there might be about our product, features or upcoming developments. Obviously we research and debug all issues possible and in case bugs are found we escalate. Statistically speaking we escalate ~7.5% of all our tickets. Mainly the tasks are exactly as explained above where we have scripts to manipulate things we need. Additionally by keeping statistics around all the requests we can easily identify the demand for tooling. This makes technical support a good source of knowledge for product owners if the statistics are done right.
The next key role for Technical Support is Incident Management.
Technical support is on the frontline for all incidents in Veriff. We have OnCall rotation and react to all incidents 24/7. It can be a full system failure or the slightest change in a mistake rate. Technical support is here to pick up the issue, do the impact assessment, and involve the correct stakeholders. Sometimes we can simply restart the failing pod in the middle of the night or remove a poisoned message from rabbitMQ without the need to wake up our developers.
Incidents can be escalated automatically by system monitoring or manually by anyone.
We also make sure that our customers are updated in a timely manner about the current state of the issue. We then drive the incident to resolution and make sure there is a post mortem available to everyone. I’ll go into more detail about how we manage incidents in Veriff in a future blog.
These are easily our two most important tasks, but of course there’s more to our daily work.
Technical support is also here to automate stuff and make everyone’s life better while working here.
We look out for possibilities to reduce manual work for any department in Veriff, create visibility where it’s lacking, and sometimes simply to say /Thanks to someone in Slack.
It is also the most motivating part of this role, especially for those who see themselves becoming a software engineer in future. You can learn, research and have simple enough engineering tasks (with real value to the company) where you can put new skills into practice!
Here are a few interesting examples of the things we’ve done here:
There are a lot more examples of these integrations, and other things technical support do which all add value to our organisation.
To sum things up, I’d say the Technical Support in Veriff is more of a hybrid - somewhere between Devops, Developers, Q&A, Customer Support and People. Veriff’s own answer to legendary secret agent, MacGyver.