While it may be difficult to believe, we are constantly bringing on new talent who surprise themselves. It is a requirement of each new hire to contribute code to production environments for the teams they work on within a week of getting started. It may sound like a daunting task, but we have the infrastructure and systems to support it.
This can cause anxiety for some - but the fact is that it works, and our engineers think it’s great. In previous employments many are used to building software without ever seeing the results of their work. With us – if you build it, you run it.
Rely on it!
DevOps is not an easy operating model. It requires commitment to stringent methods and collaboration across teams. It requires an organization to be structured to support these practices. However, once the systems, processes and people are in place, the benefits are truly transformational. In order to get started, there are a few realities you should be aware of:
You should deploy for production often. This mantra sits at the very core of DevOps and continuous deployment. If you only release every six months, it’s practically impossible for the members of your team to identify their individual contributions and ensure that deadlines are being maintained.
You should automate all testing. This is the key to quality assurance, not just of new employees’ codes, but for the entire development lifecycle. You cannot automate too much. We have automated everything from unit tests to integration tests, UI tests and performance tests. And deployment is also, of course, fully automated.
You need to have a toolbox with the dedicated tools that are necessary for completing tasks. The toolbox must be easy to use and should be used by everyone. It should ensure that the developer is able to focus on what is the highest value add – codifying business logic.
CCOE as a linchpin
Frequent releases, comprehensive automation practices and simple tools not only make it easier to onboard new developers more quickly but more efficiently launch new products. This infrastructure ensures that everyone at your organization is operating in lock-step – utilizing the same tools and operating along the same principles.
Don’t developers find this boring? If you ask our developers, the answer is no. Feedback has been glowing. Our engineers don’t waste time toiling away on menial tasks. They are able to focus on high-value work. This is not to say that our team handles the ‘not-so-sexy’ stuff – however, we are consistently building scalable tools that can automate repetitive work. We encourage all developers to challenge norms and share their input around how we can optimize, improve and develop ourselves.
We have gathered our skills in our CCOE (Cloud Center Of Excellence), a team which assesses new cloud services and implements the relevant enhancements to our toolbox on an ongoing basis. This is done in close cooperation with our development teams, who keep a pulse out across all projects and identify opportunities to deploy these solutions.
It’s an extremely dynamic environment. The culture is not for everyone – but for those who join our team, we provide excitement and the opportunity to grow. This creates successful outcomes for not only our customers, but also our developers.