Sqills, a software solution company, has fully embraced the DevOps mindset and is also not afraid to embrace the potential of the cloud with AWS. To discuss these points, as well as overcoming any challenges they had with implementing these factors, DevOps Online spoke to Don Pinkster (Team Lead Infrastructure at Sqills) and Robin Breuker (Team Lead Software Development at Sqills).
Tell us a bit about the work that you do?
Pinkster: Our primary focus at infra is on ensuring that all systems are stable. Our secondary focus is on innovation when talking about infrastructure. This means coming up with new concepts, validating them, and bringing them into production. Infra also has a support role within the organisation. Teams who may have questions related to infrastructure for example. My role is to offer advice as well as get my hands dirty.
Breuker: We work on several different software components, these are microservices for S3 Passenger. Just as the other DevOps teams we work on a small part of the larger structure. My own role is that of a product owner, but with a technical background. This means working with the team to come up with technical solutions.
DevOps goes beyond development. It means going beyond the things that you are asked to build, but it means making things reliable, scalable. Moreover, it means you monitor what goes into production as well. The component may be finished, but how does it run? Does what we build run according to our expectations or is there some finetuning to be done?
How did migrating to the cloud help you with rapid international growth?
Don: It helps us to better serve our foreign customers because global cloud providers make it possible to offer our application as close as possible to the customer. This is going to help reduce latency. That is just one of the reasons we chose to work with Amazon.
What does it mean for you to migrate to the cloud?
Pinkster: It allows to innovate and transform much faster because we have the scalability and power of the cloud at our disposal. Not to mention all the managed services it offers. When we look at infrastructure exclusively, being able to deploy infrastructure through API is incredibly powerful. No more manual input, everything can be automated.
Breuker: One of the major differences is the number of services that are offered. All the things that you do not have to develop yourself. As long as the infrastructure is stable, everything is up and running smoothly.
Were there any challenges that you had to overcome?
Pinkster: We didn’t have any real obstacles during the transition, if anything we expect them to come later. That is because we did a true lift and shift. We did have to redefine access control. Identity management plays an important factor here: who is allowed access to the servers, who can launch servers, those are the types of things that we had to think about because it simply does not come up with an on-premises cloud solution.
Did you notice any differences in moving from on-premises hosting to AWS?
Breuker: It didn’t have much impact for our services, everything went smooth. There was a bit of a learning curve to get to know all the AWS specific services.
Pinkster: We had to start from scratch, but that is a good thing. We performed a lift and shift from our application to the cloud and are currently in the next phase: making use of all the available cloud services where it makes sense to do so.
How has DevOps made a difference at Sqills?
Breuker: DevOps meant that different development teams took their responsibility related to their own components. This allows Sqills to grow much faster. It means that we can move much faster by adding new teams with their own set of responsibilities.
Pinkster: When we came from an on-premises solution, infra was primarily used to deploy and host applications. Now we are seeing a shift to where the development teams do this themselves. Infra merely offers the tooling and means to host applications, to monitor and debug. Infra is transitioning to internal support offering services to the development teams.
What sort of tooling do you use at Sqills?
Breuker: At Sqills we always want to use the right tool for the job. If we use a tool today, that doesn’t mean that we will be using it tomorrow. It’s not our goal to constantly find new tools to use, but it is our goals to keep evaluating whether we are still using the best tools available. Sqills offers a lot of freedom when it comes to teams using their own preferred tools.
Some of the tools we use include Kotlin and Go for development, Prometheus and New Relic for monitoring, error logging in Kibana and Sentry and we use PagerDuty for our stand-by shifts.
Pinkster: And for infra I think it is important for us to mention Terraform, Ansible and Kubernetes as well. Those tools not only make our job easier, but also help when it comes to monitoring.
You obviously process a lot of passenger information, what are you doing to implement security and prevent cyber fraud?
Breuker: Sqills has previously demonstrated a dedication to safeguarding our data as much as possible by first becoming ISO 9001: 2013 and ISO 27001:2015 certified. These were two initial key factors to implementing and maintaining controls related to data security and data privacy.
Even though Sqills does not process any financial transactions (these are processed through the Payment Service Providers connected to S3 Passenger), it is still important to adhere to these strict guidelines set forth by the PCI-DSS level 1 certification. That is why we chose to go through the arduous process of obtaining our PCI-DSS level 1 certification.
What big things are you seeing happening in the world of cloud at the moment?
Pinkster: We are seeing serverless gain traction. In the future, I think we are going to let Amazon do what they are good at and use APIs to build off that.
Breuker: This goes back to finding the right tool for the job. It is not an end goal to have everything serverless, but if it works better, that is what we are going to go for. We already have two development teams building serverless.