Before you invest time and resources into building a new product, you have to know that it will meet the needs of your customers.
When UpCloud’s Orchestration Team set out to build UpCloud’s Managed Kubernetes (UKS) platform, how did they know what customers needed? And how did they turn that knowledge into the final product?
We sat down with Senior Software Engineer, Nathaniel Ham, to find out how he approaches problem-solving when it comes to building complex platforms.
Nathaniel has more than a decade of experience in software engineering, working across industries from medical technology to cloud infrastructure and IoT. He now lives in Helsinki and works in our Orchestration team, who have just launched the UpCloud Managed Kubernetes service.
“My time in the UpCloud Orchestration team has already been an exciting journey so far! Since joining in 2021 – as the second member of the team – I have especially enjoyed the problem-solving aspects that have come with building the new UKS platform,” he said.
“As a senior team member, I am responsible for scoping and planning new features, participating in architectural design choices, and researching new technologies. But specifically on the UKS project, I’ve been in charge of building and maintaining our environment.”
Problem-solving with Managed Kubernetes
Kubernetes is an open-source container orchestration system for automating the deployment, scaling, and management of containerized applications.
Nathaniel and his team are responsible for the discovery and development of the recently-launched UKS, as well as maintaining and improving the product.
It is one of UpCloud’s newest products, and working with Managed Kubernetes gives Nathaniel the chance to put his problem-solving skills into action to help customers and users overcome their companies’ own unique challenges.
“Managed Kubernetes reduces both the complexity of maintaining your own cluster and the mental burden of deploying and maintaining user workloads,” he said.
“With Managed Kubernetes, you will also be able to build highly available systems, take advantage of industry-standard security practices, and save costs as there is no need to maintain expensive infrastructure.
“The automatic scaling feature also allows for decreasing infrastructure during off or down hours, promoting even more efficiency.
“I really enjoy solving problems, and this UKS realm gives me a chance to constantly try new things”.
User-Centred Design in product development
But building and maintaining the platform is only part of the task for Nathaniel and his team, who have also had to use a number of product design and agile working techniques in order to create something that meets the needs of the customer.
“I Iove how wide of a domain I’m involved in. There are constantly new challenges, and I really enjoy seeing how many different pieces fit together as part of a complex system,” he added.
But Nathaniel is also keen to point out that the problems he solves have to be the ones that the customer needs most. He tells us about one technique the Orchestration Team use for designing a product based on the needs of the end-user: User-Centred Design (UCD).
“UCD focuses on placing the user’s needs at the focal point of the design process.
“When building complex platforms, such as Managed Kubernetes, it is crucial that you are building something that actually brings measurable value.
“This approach defines the what and the why of product development. For example, we might interview users to learn about their challenges, and then we would then take this input as the basis for our product’s features.”
The UCD approach is designed to build trust with the user, who is at the centre of the product. Similarly, the end result should be packed full of features that solve their immediate needs.
“In practice, this will mean understanding your user’s actual needs – not making features ‘just because’,” said Nathaniel.
“We get to know the user’s unique needs and that helps us find the right solutions.”