Frankfurt, Germany and London, UK – April 2019 –  Kainos, a leading provider of digital services and platforms, has announced a successful collaboration with Skeyos, an independent spin-off of Lufthansa Technik, to create a ground-breaking cloud-based eCommerce solution designed to streamline the purchase and sale of repair services and aircraft components in the aviation business.  

Skeyos Marketplace is a true leap forward for the aviation Maintenance, Repair and Overhaul (MRO) industry. The online procurement platform efficiently reduces the complex logistics, paperwork and time taken to place orders, as well as providing a transparent process for its users.   

The highly secure and scalable solution is hosted in a world-class, cloud environment. By using cloud hosting, Kainos reduced the upfront infrastructure costs and made the creation of this new platform more feasible. The platform, hosted on Amazon Web Services (AWS), also has automation features to allow seamless integration with suppliers, enabling a streamlined process and a unique sourcing channel for purchasers, providing suppliers access to a larger pool of potential customers.  

Hans Bernd Schmidt, Managing Director, Skeyos said “Thanks to the MRO industry service built by Kainos, we have successfully onboarded four times our target number of purchasers on to the Marketplace platform. The scalable cloud-based solution has enabled us to launch our platform in the US and Asia, as well as the European market. We chose to partner with Kainos because of their strengths in UX design, their agile approach and ability to mobilise a team to quickly develop ideas into workable solutions.” 

Russell Sloan, Head of Digital Services at Kainos commented “In seeing the limitations of existing B2B solutions, the Skeyos and Kainos teams opted for a unique, tailored solution that would deliver a ‘many sellers’ to ‘many buyers’ platform. The Skeyos team trusted our expertise to build this platform that delivers their aims while also growing their new business, and we’re delighted to deliver a solution that doesn’t constrain them with out-of-the-box product limitations. Once again, we have  been able to prove that our approach is particularly compatible with and adds value for entrepreneurial or intrapreneurial companies.”  

Nikos Karaoulanis
Chief Design Officer – Kainos

With design thinking now widely regarded as a key pillar of digital transformation, we sat down with Kainos’ Chief Design Officer, Nikos Karaoulanis to discuss his new role as he tells us about why design is so important in the services Kainos offer.

With over 17 years industry experience, Nikos has led the User Experience team at John Lewis, ran experience strategy for Aurora Fashion, set up the UX team for House of Fraser, and led the Experience Design team at Marks & Spencer. More recently, Nikos has applied his skills leading the design of services for government departments.

Nikos first joined Kainos in 2015 to build design capability. In his new role as Chief Design Officer, Nikos will be Kainos’ design champion, as well as a combination of strategist, individual contributor, and influencer to the whole organisation.

What does it mean to be a Chief Design Officer?

The role of the Chief Design Officer can have different meanings depending on the context. A CDO in a consumer electronics business will be quite different to one in a healthcare organisation. The first may require more of a traditional design background and focus on product design, while the latter may be more focused on service design and how people experience services. 

In my view this reflects the wide impact design can have; design is no longer exclusively related to aesthetics. Design is an approach that helps us understand needs so we can deliver relevant experiences.

Kainos is a company with a long and proud engineering heritage. Embracing design makes a statement that excellent digital delivery can be combined with a clear focus on users and good design principles. 

What characteristics do you think a Chief Design Officer should embody?

While there are different ‘flavours’ of Design Officer roles, there are some common underlying characteristics. Seeking out and being comfortable in uncertainty is a key skill. Considering disparate or even opposing ideas and being able to recommend solutions that combine them helps avoid quick and easy solutions. Balancing qualitative with quantitative thinking helps provide insight that can create more innovative ways forward, and of course being sensitive to user needs.

Why do you think more and more companies hire the role of Chief Design Officer these days?

The practice of good design has proven to help companies achieve sustained commercial success. 

Organisations always aim to create and maintain sustainable advantages against the competition and design is one of the key ways for them to achieve their goals. 

Recent reports have shown that those companies that have embraced design in meaningful ways have higher revenue growth and higher returns to shareholders. Design is about market relevance and meaningful results; design makes commercial sense.

What are your main priorities in your new role as Chief Design Officer in Kainos?

In the immediate term I will be working with others across the business to build and deliver design driven offerings; distinct packages of work to be delivered using design thinking. Whether it is a data problem we are solving or an AI solution we are considering, a design framework can help deliver meaningful and impactful solutions. The overall aim of the role however is help embed a design mindset internally and with clients.

In your life, what choices have been fundamental to your career?

It has to be taking on projects and roles that challenge me. Looking back, I have always been attracted to opportunities that allow me to apply my skills to new areas and hopefully make a positive impact. 

If you were starting your design career today, what would you focus on?

Computational design and design ethics, definitely. My early career was at a time when design was still proving its value. The industry has matured since those early days and design is now dealing with significant challenges on a global scale. Designs can be used by billions of people and can be experienced instantaneously. This impacts the way you design and test; you now need to make use of data; machine and designers working together…what can go wrong?

What do you like doing in your leisure time?

A year ago I made the foolish(?) decision to study for an MBA so all my free time is now dedicated to studying as my wife and daughters never fail to remind me!

I chose to do the MBA because I wanted to find ways to better integrate design and business…and to be able to read a financial report! 

The language of design can be very different to that of business. Design uses stories, intuition, qualitative insights, while business tends to rely on numbers, statistics, and hard facts. These two approaches can easily clash; I wanted to find ways to integrate them. Just a year and a half of study left to do!

https://medium.com/kainosxd

Kainos joins AI-visionaries at The AI Summit, London (June 12-13, ExCeL Exhibition Centre), the headline show of London Tech Week and world’s largest AI event for business: welcoming over 20,000 attendees, 500+ fellow AI exhibitors and 500+ speakers — including the CEOs of British Airways, Barclays UK and Addison Lee — who will share their AI story for the first time.

Over the past few years, Kainos has invested heavily in preparing its AI practice for the next wave of digital transformation. Our focus is on the application of AI, not just the technology. We’re already working with customers in Government, Healthcare and Commercial Sector to enable them to solve difficult problems and deliver the right outcomes using AI.

The fourth annual AI Summit is strategically co-located with six additional events which focus on the business impact of Blockchain, IoT, Quantum Computing, Cloud and AR/VR – and is the first major technology show to be run in partnership with HM Government’s UK Industrial Strategy.

Alongside Kainos, The AI Summit welcomes leading AI innovators (including Microsoft, IBM, Google, Amazon, Intel & Oracle) — AI Business Co-Founder Daniel Pitchford explains “This is where AI is brought to life, we’re delighted to welcome Kainos on-board and connect the global business community, industry, and government, with the AI innovators to uncover the opportunity AI and the Fourth Industrial Revolution presents”.

“Beyond the hype and theory of AI, the AI Summit showcases how corporations globally are actually implementing AI” says AI Business Co-founder George Kipouros – “And shares the AI journeys of over 500 businesses – including brick & mortar UK brands to global innovators alike – from Lloyds Bank to Facebook, Sainsbury’s to GlaxoSmithKline, Mastercard to TGI Fridays… this is where the world’s C-Suite benchmark their AI vision”.

Find out more and register for this event here.

I’ve seen three (No, not in Game of Thrones).

In fact, more than 100 people in Northern Ireland have.

Right here.

W5 Belfast

There isn’t anything there.

But there is. Yet, you can’t witness these marvels with only your eyes. What you need is a magical helmet, which will allow you to venture through a mysterious fantasy world aligning with our own. A helmet that won’t power itself, but will need armour that is powerful enough to sustain it on your journey.

That is what we told those participating.

In reality, they had to don a Samsung Mixed Reality HMD and a backpack PC. This equipment allowed the kids, big (adults) and small (actual kids), to enter DragonSlumber. A fantasy world created by the Northern Irish comic book illustrator, PJ HoldenKainos, Digital Catapult and SARC Queen’s.

After our initial meeting with PJ, he showed a lot of interest in experimenting with the potential of immersive technology, and the possibilities that these tools opened up to him and other creatives.

Kainos and Digital Catapult have access to the state of the art, which gave us the potential to deliver on the future. We wanted to push the accepted bounds of the current state of Virtual Reality. So, we created an experience that engulfed a large space which made the potential of immersive technology feel limitless. All the while, opening these technologies to the public in and around Belfast. Before, we have had small and narrow experiences available to us, but nothing on the scale of DragonSlumber.

An event like this, allowed us to appreciate what the word immersive will stand for in years to come. An experience that transported people to another world with fewer limits than the initial wave of Virtual Reality gave us.

In Kainos, we believe it is important to make the most of our opportunities to inspire those younger than us to get involved and find an interest within STEM. We thought this would be a great platform to do so, which supported our decision to target a younger audience.

Our First Steps.

PJ is a digital artist keen to experiment with virtual reality. He also has experience in the software industry, and someone who is the incarnate of enthusiasm. PJ was exactly the artist we were looking for.

We came together to build what we were calling a “VR Safari”. A larger world that goes beyond the accepted spaces we find ourselves in Virtual Reality. A space that would house many pieces created by various artists and would all fit together as one, to create a larger world.

With the addition of PJ, came the swift manoeuver to an experience which would be one whole piece. This made sense for many reasons; introducing more minds to the project created noise and there would be more risk to worry about.

PJ had many great ideas on how to fill the space before we told him the size of it. 15m x 12m was the measurement, to which he responded on a scale that we hadn’t been thinking of before. Dragons; in the space, PJ wanted to lay a sleeping dragon down for people to walk around. Something of that scale would have been very expensive to create without Virtual Reality.

The initial concept looked like this;

It is hard to determine the size of the space from the photo at the top and the above concept drawing, but the space is almost equal to that of a tennis court. Compared to the average space available for most people – that’s big.

Testing.

As soon as we got into the space, we had a plan for what we wanted to test. We have had previous experience with larger scale experiences, but not with inside-out tracking, so we had an idea of what to look out for.

We needed something that we could use that was pick up and play, allowing us to test quick. Looking into our options, applications such as Google Blocks, Tilt Brush, Oculus Quill, Medium, Microsoft Maquette and Gravity Sketch came up. After testing in the limited space of our office, we decided on Tilt Brush. It was the app that played the nicest with us walking beyond the bounds of our chaperone. What we didn’t think of at the time was how useful it would become for prototyping and recording the space the event would take place in.

Google Poly reduced any and all friction we had when discussing ideas and progress to almost nothing. The integration with Tilt Brush, allowed us to upload our sketch to the website. Anyone with the link could view it, providing us with the ability to share our progress and ideas, almost instantly.

Prototyping.

“A time when the world is in constant change and we are churning through slight alterations because we end up preferring one idea or approach over another.” — Jake

Or,

“It’s just a useful period during development where we learn from our mistakes and build a better experience because of it.” — Jake

Either way (I prefer the first way, it’s more dramatic), we learned a lot. This was the most important phase of the project; Spectacle entered in one end and DragonSlumber came out the other side.

A time where this…

Turned into this…

Through this process we adapted and added to the story. As PJ was producing the assets, we were piecing those assets together inside of Unity. While also tinkering with potential mechanics and optimisations to make the experience better.

The use of Tilt Brush didn’t stop in the prototyping phase, we had our own goal of using immersive tools as much as we could. PJ decided to continue with Tilt Brush as he saw the most potential in it for this project. In the end, the whole project was built from the ground up in VR for VR.

During our testing of the prototypes in the space and in Tilt Brush; we noticed people would be hesitant to move beyond the set bounds, for the fear of walking into something.

We came up with a simple solution. One that introduced a very interesting way of engaging with those inside of the headset; an idea to bring them out of there comfort zones.

A Puppeted Chaperone.

The story behind the experience was that you’re a fairy who lives within the wizard’s tower, DragonSlumber. She needs to get home, but she’s scared of the dragons wrapped around the tower and one is asleep right beside the exit.

Lottie, puppeted by a guide who trained and prepared to act in the role, lead the participants through the virtual and physical. Concerned that adventurers could injure themselves, we wanted to get them around safe. While also allowing them to get immersed in the world and lost in the fantasy surrounding them.

We tested this feature of the experience many times; it was evident from the beginning that people’s confidence rose knowing they had a companion they could trust.

Organising an event like this.

This was our first time, none of us had organised an event like this before. As we got closer to the deadline we thought it was important to bring in more minds to help orchestrate it. In particular, we brought in Damian Gribben, a design consultant and Rachel McGrath, a senior marketing exec, both of whom we work with in Kainos.

We wanted both worlds to meld into one another as seamless as possible. Damian brought a lot of valuable UX experience to the table. He worked with PJ to help design an immersive experience outside of the headset.
Rachel did a fantastic job at marketing DragonSlumber to as many people in Northern Ireland as possible.

On our side we were finalising the content of DragonSlumber; tightening the relationship between the visuals and the audio. If there is one thing we learned, it is how valuable a great soundscape is to an immersive experience. After working with professional sound designers at the Sonic Arts Research Centre (SARC) at Queens’ Belfast we immediately noticed the effectiveness of the experience increase substantially.

Finally, without the help of Chloe Thompson, Marc Nevin and Eoin McCoy, the smooth running on the day wouldn’t have been possible, it was a big team effort.

So, DragonSlumber.

Here’s where we arrived!

A place where all children and adults alike could equip their armour and venture into the vibrant fantasy world of DragonSlumber.

A place where dragons are no longer a myth but are virtually all around us.

The Day of the Event.

Walking into W5 that morning we had most things set up. The hardware was ready to go, the material to entertain the kids and parents was set out, and the banners, bunting, and dragon feet were placed around the space.

Below is what the actual space looked like in the morning. The reason for this organised chaos was to improve the quality of the HMD’s tracking capability (Eoin’s blog), which relies on unique three dimensional world anchors to keep track of it current position.

The tape on the ground was our guide for those acting as fairies; they needed to know where the virtual path was to guide the adventurers on their quest.

What the event space physically looked like.

We were as ready as we could have been!

As our first guests walked through the door, everyone engaged with their roles, from the greeters making them feel welcome to the fairy guides.
Our armorers then walked them into the armoury so they could equip them with their magical gear, before setting off on their adventure.

The results?

They loved it.

They walked away with a smile on their faces; having carefully guided Lottie around DragonSlumber tower and past Gus the large sleeping dragon to the exit. Where Lottie rewarded them will a small gold chocolate coin from a nearby chest.

The chest holding the gold coins

We did make the effort to decorate it more, but this image is too good to not include… we didn’t look at the dimensions before we ordered it!

The day continued to that theme, everyone walking in with a smile, walked out with a bigger one. Parents were able to be with their children throughout the experience and watch via a screen on the backpack.

We attempted to recreate the dragon’s breath with blow guns. It worked for the most part and we discovered how much kids loved to shoot blow guns at their siblings and parents!

We organised an accessibility hour for the end of the day.

Accessibility was key

Accessibility is one thing in particular that we were thinking about early in the project. It was very important to us that we opened up this event to as many people as possible.

We thought it wise to not make assumptions, so we got talking with another member of Kainos, Jackie Pollock. We found Jackie’s input very insightful. With Jackie’s help we were able to put aside an hour dedicated to allowing all children access to the world of DragonSlumber. We made the plan of the event more clear, lowered the sound by half and introduced them at a slower pace to something they would never forget.

“It was like being in my own cartoon”.

That was something that put a smile on all our faces.

I would encourage everyone in a position like ours to consider what you can do for accessibility, it was one of the most rewarding things we’ve done.

So there you have it – the experience in a nutshell. In part 2 of this post which we’ll share next week, I’ll wrap up with everything we learned and took away from this experience.

In the meantime, check out our video roundup for more!

Just over a year ago, when I received the phone call with a job offer, I was delighted. My four years of Computer Science at Uni had paid off and I – well, my mum – could tell everyone I was going to be a “Graduate Trainee Software Engineer”. But when a friend soon asked me, “Well what exactly will you be doing then?”, I suddenly realised I couldn’t really give a proper answer. What would I be doing on a day-to-day basis? Would I just be sitting in front of a computer coding all day? Would I be working in a team? Would I enjoy it? Would I fit in?

So now eight months into the job, I wanted to set out answering that elusive question “What is it you actually do?”. I’m finally ready to give my friend – and hopefully a few others too – a proper answer!

First things first

First things first, a bit about Kainos and the specific project I’m working on. The majority of Kainos projects essentially go like this: client asks us to build something, we build it. Some projects we take charge of the complete software lifecycle, from user research to development to testing. Other projects are more “supporting” roles where we lend a hand to an existing client team. Kainos has a particularly strong reputation in the public sector, working on projects with various government departments – notable success stories include overhauling the mainframe-based MOT system and transforming the online register to vote service.

The project I’ve been on since starting is more the “support” kind, working alongside a public sector client’s existing team. That makes the team on our end fairly small – four developers, a tester and a scrum master. Without getting into the politics of it, the software being developed is essentially an online user registration and account management system. It’ll allow businesses and individuals to register and manage a “single sign-on” account for multiple digital services. It looks much like many online government systems you might be familiar with, such as for paying your road tax or applying for a passport. The technologies we’re working with are the usual web dev suspects – HTML/CSS/Javascript with the backend running on Node.js.

If I’d thought I was going to be just sitting in front of a computer coding all day, I couldn’t be more wrong! There is quite a bit more to the job than just that, with lots of variety to our everyday activities. A big chunk of time is simply communicating with the rest of the team. That may be working together on a task (occasionally ‘pair programming’), discussing/designing a solution to a problem, having meetings, shadowing others to learn more about something, or simply catching up with what everyone’s been up to.

‘Doing Agile’ vs actually doing Agile

Most fundamental to the way we work as a team is agile. And this time it’s not like a group project at Uni where you just pretend you’re doing agile without understanding what it really is 😛. We do agile properly. We have a dedicated “Agile Team Lead” – a scrum master who’s an expert in all things scrum and agile. And our entire way of working is built around a number of scrum “activities”. The most important of these is our daily stand-up. Every morning, as a team we all stand around our scrum task board and each answer three questions: (1) What did I do yesterday? (2) What am I going to do today? (3) Do I have any impediments? We move any tasks across the board if their status has changed since yesterday. This is really useful for self-organising the team’s work as well as holding yourself and others to account. It also provides a daily opportunity to raise any issues to discuss with the team.

This ties in with us working in two-week “sprints”. At the start of each sprint, we have a team “refinement session” where we plan which “user stories” we’re going to commit to from the backlog. A story is just a description, from the perspective of a user, of a feature to be implemented in the system. This could be as simple as changing the wording on a page or fixing a bug, or something more interesting like pulling in some text from a Sharepoint document. To try and quantify the “size” of a story, we assign it a number of points. Then, after making sure we all fully understand what’s wanted from each story, we commit to a number of stories that we believe we can deliver in the sprint.

After this we organise ourselves as a team to work out who’s going to work on what. This team “self-organisation” is something that took me a bit of getting used to. When I first started, I felt like I should be waiting around for someone to tell me what to do, expecting tasks would be delegated across the team. What I soon realised is that this is not how an agile team operates. Instead, it’s generally up to you to choose the tasks or stories you want to pick up. Nobody is dictating what you do, so you can decide what you’re best working on and negotiate this as a whole team to everyone’s advantage.

Another big chunk of our time is spent liaising with the client. We do our story refinement with our “Product Owner” on the client’s side, so we can ask questions and work out exactly what they want doing. And then throughout a sprint, as stories are completed, we arrange demos via screenshare so that the Product Owner can approve what we’ve done or ask us to go back and make a change. We also take part in a fortnightly ‘Show & Tell’ where all the teams on our project each demo their work on a big conference call to different stakeholders (including some scary “higher-ups”). This is what makes the job more than just technical skills and programming – soft skills like writing, demoing and presenting – the horror – are equally important. There was a big emphasis on this during our 7-week training course which all trainees undertake when starting. As well as all the technical stuff, we had to do practice presentations and even a mock phone call with a pretend client!

Considering the overhead of everything else we get up to, the time I get to actually knuckle down to some proper coding is often a smaller proportion of the day than you might imagine. But to give a simple example of a bit of something I’ve worked on, we had a story to implement an autocomplete widget for a ‘country’ form field. When filling in their address, the user is required to pick a country from a fixed list of countries defined in our database. Now, this could just be implemented as a dropdown select box, but that would mean scrolling through a list of around 200 items – not the best user experience. The ask was to convert this to a normal text field which shows suggestions as the user starts typing. My job was to integrate this new feature, making use of an existing autocomplete plugin to save implementing it all from scratch. Still, there was a lot of work to do in terms of matching the sass styles to our project’s styling, implementing validation to stop the user leaving the field blank, and pre-populating the field with the current selection if the user revisits the form. In addition to this, it was essential that the boring non-JS dropdown still worked as a fallback for users who have Javascript disabled for whatever reason.

While this story was mostly a front-end JS exercise, on other stories I’ve worked on a range of different things. There’ve been stories centered around doing back-end work in Node.js, working on front-end HTML templates, writing code to call our external database API, integrating code to produce usage and performance logs, and writing unit and integration tests (yes these actually mean something in the real world 😛). More recently I worked on a story to show a landing page to the user if the privacy policy has changed since they last logged in and then updating the record of the version they have accepted (this one was tougher to implement than it sounds!).

Another different but interesting task was tracking down the source of a memory leak one of our performance tools was reporting, which I paired on with a senior developer. It definitely feels like I’m being exposed to all kinds of technical tasks, not just working on the same stuff every day. At the same time, this is only my first project – my trainee friends on other projects are working on all sorts of different stuff in different languages such as Python and Java. I don’t think I’ll be getting bored anytime soon!

Everyone helps each other out

Something else that we fill our time with – albeit not out of choice – is bugs of course! Just running into errors and problems becomes a constant and inevitable time-consumer. As any programmer will know, it’s too easy to understate the amount of time swallowed up just from dealing with what turns out be a very simple issue. There was one time when we spent nearly an entire day trying to work out what we were doing wrong – only to discover that a simple initialisation setting had been changed on the client’s end. The nice thing is these are often the times when the team comes together to help each other out, meaning everyone learns from the experience.

Developing ourselves too, not just a codebase

As a team, we also agree to set aside an afternoon a week for working on our “personal goals”. These are of our own choosing, intended to further our personal development, and are agreed with our manager. We have a fortnightly “one-to-one” with our manager to discuss these goals and any other issues. One of my goals is to do a presentation to the team on a NodeJS topic, as a “knowledge-sharing” session. And my other goal is actually writing this article! This is a really great opportunity to step back a bit from your day-to-day work and focus on your long-term self-development which, after all, is as much an asset to the company as it is to yourself.

The job in a nutshell

So there you have it. The job in a nutshell. It has certainly proved more varied and interesting than I could have imagined. Before starting, I remember thinking how we trainees might just be given some menial tasks or have to shadow senior devs for a while. But even as a trainee, I feel like I’ve been given a lot of responsibility from the get-go. I’ve had the opportunity to get stuck in to some really interesting work and even take the lead on development tasks, while also being able to do things at my own “trainee” pace and get help when I’ve needed it. At the same time, it’s not felt like we haven’t been ready to make a proper contribution – the bespoke 7-week training course prior to starting in the office put all us trainees in a great position to hit the ground running. On top of this, there is a real sense that everyone in the team is treated equally regardless of your position. So even as a trainee, I feel like my input is valued as much as more senior developers. All this adds up to a fulfilling experience where you feel like you’re a worthy team member making a real difference. And most importantly of all, you’re not just a robot churning out code 24/7 to no end – you do get involved in much more than just code!

Find out more about careers in engineering as a grad here.

“Networking the Northern Ireland AI community is the core mandate that drives AI NI. This will be achieved through organising events that target a wide range of demographics that include companies, students and academia.”
– AI NI

On the 13th and 14th of April, AI NI held their ‘Good AIdea Hackathon’. The theme of the event was ‘AI for Good’, and it turned out to be the largest hackathon ever run in Northern Ireland with over 200 attendees taking part across two locations.

My Team

As a member of the Kainos AI Practice, I felt like this hackathon would be a good chance for me to show off and improve my skills and knowledge in AI. My team consisted of myself and the other software engineers from the AI Practice. We decided beforehand that we were going to enter this hackathon as a team.

Challenges

There were three challenges that attendees of the hackathon were able to take part in:

1: The Peltarion Challenge. This involved taking data from hearing aids and using AI to help improve them. The example idea given was to help allow the hearing aids to eliminate sound coming from more than one source using AI to detect different voices and background noise.

2. The BazaarVoice Challenge. This involved taking reviews, both legit and bot-generated, and trying to build an AI model that could tell the difference between them. This is the challenge that my team decided to take on.

3. The AI NI Challenge. This was a challenge for any other ideas that the teams had that fell under the banner of ‘AI for Good’.

Our Idea

As previously mentioned, our team took on the BazaarVoice challenge, but we also had a mindset focused on how we could take that and use it as an ‘AI for good’ in order to also fulfil the criteria of the AI NI challenge, which gave us the potential idea of using something like this to detect cyber bullying in tweets. This manifested in the idea of a Google Chrome extension to help users detect fake reviews by allowing users to select a piece of text, for example a review for a product on Amazon, and then this would be run through a classification algorithm and classified as either ‘real’ or ‘fake’ and this would be shown to the user. We also decided to build a webapp with the same functionality to ensure that users who aren’t on Google Chrome would be able to benefit from the use of our project. This would connect to the same API as the Chrome extension (more on that later).

We had a few challenges and obstacles to overcome to make this project a reality. First of all, accuracy is a big deal when it comes to AI and so we had to build our project to have the highest accuracy possible (which ended up being 95.75%). This is important as it cuts down on the number of falsely flagged reviews (i.e. false positives and false negatives). Additionally, we didn’t really have much experience in building Chrome extensions, so this was something that we would have to learn. We also had to set up a repository, branches and automated testing.

Goodies and Perks

We were given a T-shirt as a thank you for attending the event. We were also given free food and drinks for the weekend, as well as water bottles and AWS credits.

Day 1 — Development

We arrived at the hackathon between 9 and 10 AM on Saturday. Once all the attendees had arrived, we were taken into the lecture theatre where we were briefed about all of the events that would take place over the weekend, the challenges that we would be taking part in, and the prizes that the winners would be receiving. Workshops were given based around data science, text classification and pitching.

After this, we got back to our room and we started to work on our project. We initially started by planning out what we would do and setting up a Kanban board to be able to track what had been done, what was currently being done, and what needed to be done. This gave us a good idea of all the work that we needed to put into our project.

Our Kanban board we used for planning.

Our first step in our development was the ‘Data Analysis’ stage, which was for us to familiarise ourselves with the datasets we were given and perform some exploratory processing on it (using pandas to combine data sources and normalise the data, and each team member conducted an independent investigation into the data to gain an unbiased intuition about the approach to solve this problem).

In order to build our classification model, we needed to decide on two things: a vectoriser, and a classifier. We decided that the best way to do this would be to set up a ‘matrix’, testing each of three vectorisers against each of three classifiers and finding the accuracy score of each combination. We also used grid searching in order to find the optimal parameters in order to get the best accuracy.

In order to create standard practices and automated testing, we created a common interface for each of our vectorisers and each of our classifiers. This meant that each implementation could be tested and the team had the confidence and ability to use each implementation in the same, simple, standard way.

We ensured that it was a fair test by making sure to keep the same test sample size and seed (a value that the data is randomised in a set way, and can be replicated). This means that all of the different vectorisers and classifiers could be compared fairly and none would have an unfair advantage against the others based on the training data.

We found that using a ‘Bag of Words’ vectoriser along with a ‘Neural Network’ classifier gave us the best results so that’s the combination we decided to use.

Our team put an emphasis on working under good data science principles, in a measured way that put a process around how we write and review different AI models and components. In addition to the three classifiers and vectorisers that we had put to the test, we also ran a test on BERTwhich is a Google-developed deep learning natural language framework built specifically to be able to tackle any natural language machine learning problem. Due to BERT’s low level implementation and the time it takes to be trained, we did not integrate our BERT model into the full system and instead built that with a simpler model that we were able to validate much quicker.

Meanwhile, we also had to take frontend development into consideration. As previously mentioned, we decided to build a Chrome extension and a webapp. I took on the responsibility of leading the dev work on these frontend implementations. Having never worked with Chrome extensions before, I decided to read through some tutorials in order to make sure I understood how they worked, then got started building ours.

It was quite easy to get it up and running. It would simply take what the user had selected and send it to an API endpoint, then return the response from the endpoint.

We were able to get the Chrome extension finished rather quickly and then we moved on to developing the webapp. This was a simple webpage containing a textfield and a button. The button would take the input from the textfield, and send this to the same API endpoint that the Chrome extension uses, i.e. using the exact same classification model as the Chrome extension, allowing us to use this API as a microservice.

By the end of the day, we had filled in our ‘matrix’ of accuracies, which ranged from 61% to 95.75%, and had finished the Chrome extension and webapp. We had to implement some pair programming and collaboration strategies to overcome a few difficulties, for example trying to use embedding values from a file.

Day 2 — Pitching

On the Sunday morning, the only thing we had to do in terms of development was to finalise the API and tie everything together.

Once we finished that, it was time for us to start working on our pitch. We decided to split up the pitch into different sections which the members of my team would present — one member would give an introduction, another would give the technical details, I’d give the demo and another would answer any questions the judges had.

We created a presentation to go with our pitch which we all worked on collaboratively. I recorded our project being used and inserted that as part of the presentation.

A slide from our presentation.

Our team were the first ones to present to the judges, who were really impressed by our ideas. Once we finished, we went out as a team for lunch and came back for the prizegiving.

There were a number of spot prizes, as well as the main prizes which went to:

3rd Place — DiverseCV, which is a system to remove the potential of both intentional and unintentional bias by redacting sensitive information from applicants’ CVs before the employer can view it to pass judgement.
2nd Place — Team Blackball, who created a system to help teach users spell their names in British Sign Language using image detection.
1st Place — Tied between Team Fletch and my team, who both created systems for telling fake and real reviews apart.

My team (first four from the left), Team Fletch (the two next to us), and Paul Hill from BazaarVoice (judge).

There were a lot of good ideas and a lot of very well-made projects, a lot of which are incredibly innovative and could potentially be used to help a lot of people in the future.

Why Hackathons Matter

This leads me on to my final point of this article, why hackathons actually matter.

For me, the time constraints put on attendees of hackathons means that they will have to focus on the most important things and not get bogged down on small details. It encourages a way of thinking through problems to find and implement a solution in the fastest time possible. It builds confidence in the abilities of developer and enables them to learn and improve their skills in a way that normal development simply can’t replicate. From my own perspective, I believe my skills and confidence surrounding AI have improved as a result of this hackathon, and I hope to be able to use and improve these skills in work projects and in further hackathons.

The Cloud and I

Welcome back as we tumble into instalment part trois. This time, we explore the storage phenomenon that is ‘Cloud technology’ – no, not the tiny pieces of dust that float in the air when vapor condenses!

The verbatim description of this storage revelation is as follows; ‘Cloud storage is a cloud computing model in which data is stored on remote servers accessed from the internet, or “cloud.” It is maintained, operated and managed by a cloud storage service provider on storage servers that are built on virtualization techniques.’

Why should we all have an understanding of Cloud?

Iit’s worth noting that there are two main commercial providers of this service/platform that Kainos subscribe to; namely Microsoft Azure and AWS (Amazon). There are also two ways in which Cloud can be used; Public and Private, our preferred approach being Public. The main differentiator between public and private clouds is that you aren’t responsible for any of the management of a public cloud hosting solution. The data is stored in the provider’s data centre and the provider is responsible for the management and maintenance of the data centre.

So why Cloud?

As a result of the large-scale projects we undertake as a consultancy, there are huge amounts of data being transferred between storage servers. ‘The cloud’ makes these projects more efficient without worrying about installing huge physical storage systems for each job and/or location.

As with ‘conventional’ storage methods this data is still encrypted and secure – despite initial reservations from parts of the industry. The old guard are slowly moving towards the cloud as a natural progression, understandably for larger players who have a global presence this will take more time to transfer across too, however it is plain to see this is inevitable for all as we move into tomorrow’s world.

Surely it’s not all positive?

This all sounds great and a ‘no brainer’ for businesses to adopt, No? Well it is mainly positive with the only main con being possible downtime. Cloud computing makes your business dependent on the reliability of your Internet connection. When it’s offline, you’re offline. If your internet service suffers from frequent outages or slow speeds, cloud computing may not be suitable for your business – less of an issue for medium to larger companies.

Kainos have always been and will remain early adopters of ‘new tech’, this approach not only sets us apart for the competitors but offers the most efficient solution for the most important group – our customers.

I hope this has given a simplistic explanation of the cloud, plus the how and why companies like Kainos can use this every day as a preferred method of storage.

Want more? Some of our engineers have written about Cloud and different elements of it in more depth. Check out a couple of my favourites.

You’ve read about the basic elements you need to succeed in digital services projects, next we delve deeper into what happens when these are built and up and running. Join me next time for an insight into digital transformation projects and the scalability of these……until then stay safe!

I work as a Delivery Manager and am currently based in London. I’m originally from Denmark and lived there for 29 years.

In my spare time I play a lot of badminton and was playing First and Premier division in the UK, but all good things come to an end, unfortunately, as you get older and the competition gets younger! It looks like my daughter is following in my footsteps though which is great to see.  I also like running and am helping my fiancé train for her first marathon.

I grew up just outside Copenhagen. When I was 15, the age you finish your first stage of schooling in Denmark, I didn’t know what I wanted to do with my life. I kind of bumbled my way through school without knowing what the end would be – did I want to go to college or go into business and finance before I started university? I ended up selecting business and marketing, which I was pretty interested in at the time. After this, I went to business school, completing a master’s degree in Management of Technology. Bear in mind that this was back in the 1990s before the internet had arrived… yes that shows my age… Technology was new and for the few ‘high tech’ companies set up and working within Denmark, so the degree focused on how to deliver such products and services. I really enjoyed this time of my life – studying and working part time and later full-time, for a Norwegian oil company, running data analytics for them. It was challenging at times – writing my dissertation in the evenings, balancing my working life with study, but really set me up for my future.

In my first job with the oil company, I was exposed to some of the large tech companies we’d still know today. At that time, the technology they brought to data mining and analytics was really new and fresh. We were able to do really exciting analytics using statistical software developed in the US to work out patterns and predictions about our customers and how they buy fuel. This got me really interested in technology and project delivery.

The world of IT

Shortly after this, I made the switch to ‘consulting’, building applications for commercial and government clients. I did a project for the Danish equivalent of the FSA for a while working on some interesting solutions to help monitor insider trading. This was an amazing delivery project, working with a small team to create a really robust product, and it was still working flawlessly 10 years after we finished building it! 

Moving to the UK

Unexpectedly one day, I got a call from a large tech company in the UK, offering me an interview and three months later I moved to London. I assumed it would be a brief opportunity and that I’d leave three or four years later… but here I am twenty years later still living in London with no intention to leave. So things don’t always work out the way you think!

I worked on a number of different projects, moving services for private sector customers from offline to online, providing safe and secure places for customer data. My first role in London gave me the chance to work on large scale cross-European projects. I was firmly embedded in the delivery world and loved working on big challenging projects with large distributed teams.

I then had the opportunity to move to a smaller organisation and immediately saw the difference. I really liked this type of culture, where you knew most of the other employees by name, and the leadership team knew mine. This company grew rapidly and eventually got bought by a large defence and consulting company, so after 12 years the next step for me was Kainos.

When I heard about the opportunity, I started doing some research on the company and what it’d be like to work there. What really set Kainos apart was the focus on people. It had a small company feel, but was working on some really incredible projects with UK Government.

I did more digging and learned that Kainos had great word of mouth. I related, because I had worked for organisations in periods of growth, so I recognised the challenges and the similarities. I joined in November 2017 as a Delivery Manager on what is now one of our large government accounts, where we’re building a centralised service allowing local highway authorities, utilities and contractors to plan and manage roadwork permits. It’s a really exciting project, I’m really embedded in it working with a great team. We ran a 3-month Alpha and are currently in Beta, with around six months to go. Completing the Alpha was a really proud achievement for me and a great way to start in Kainos.

Working as a Delivery Manager in Kainos

It’s great and I love the challenges it has thrown at me!  Part of my role is to manage all different aspects of project delivery – this is where all the pieces of experience from my background really come to the fore and I can apply them all.

We’re an agile team of 42 people. I work with distributed teams: feature teams in Belfast, WebOps and testing teams in Gdansk, and our experience designers and architects teams in London. On top of this, we’re working closely with two delivery partners, customers, and our subject matter experts in London too. It’s a real melting pot of cultures, people, characters and skills – that’s what makes it work so well. But as you can imagine, at times it can be tricky to coordinate! 

Skills for a great Delivery Manager

I’m not the most technically strong – I realised that early on in my career. What I’m great at is planning, coordination, management and engaging customers – so I have a full spectrum of skills that are really important on customer projects. My career path has led to this point and I believe the set of skills I’ve developed working on large and small IT projects has given me the right mix for working on Digital Services projects at Kainos.

Inspirations

I’ve worked with some really inspiring people in my career. For me working with many different people on different projects and from different backgrounds is what inspires me. I like to watch how other people deliver solutions for customers and how they solve problems. Working as a Delivery Manager is perfect for me as this is a big part of the role.

I’m also conscious of ensuring that everyone in my team is learning and growing, and that’s what sets Kainos apart too. Teams are given the ability to focus on their own development as Kainos recognises that it’s great for customers too. So that’s really inspiring.

What’s next?

I want to establish myself in Kainos. I have a lot of knowledge that I want to share and I want to learn from my colleagues. When I joined, I had experience of working in a growing company and I want to play my part in Kainos’ growth, as each and every employee here does. The company’s growth is fast paced because we’re so successful and within my capability of delivery managers, we are working together to ensure that our service to customers remains successful and we’re all consistent.

It’s a really exciting time and I’m looking forward to see how Kainos continues to expand, the next steps on my career path and where it takes me. The future is exciting!

London and Belfast, UK – April 2019 – Kainos, a leading provider of Digital Services and Platforms, has announced the successful implementation of its cloud managed Evolve Electronic Medical Records (EMR) with East Suffolk and North Essex NHS Foundation Trust.

The development sees Kainos’ award-winning Evolve EMR platform migrate from an on-premise solution to a Microsoft Azure cloud-hosted managed service.

Digital leaders within NHS Trusts are facing increasing challenges including limited financial resources, stretched IT teams and ongoing security risks. Moving to a cloud-managed service is seen as a key solution for overcoming these challenges.

Mike Meers, CIO, EastSuffolk and North Essex NHS Foundation Trust comments,“Kainos Evolve is a core system of record for our staff and has supported the Paperless Healthcare Agenda across the Trust as an on-premise solution since its implementation in 2009. The move to the Evolve EMR cloud-managed service provides a number of significant additional benefits as it allows for time and capacity to be freed up within the Trust’s IT department that would otherwise be takenup managing infrastructure. The Trust will benefit from advanced security, fully managed end-to-end operational maintenance, and managed upgrades by dedicated Evolve platform experts. This supports our Trust philosophy of ‘time matters’, giving back time to our staff, patients and their families.”

East Suffolk and North Essex NHS Foundation Trust was formed in 2018 as a result of a merger between Ipswich and Colchester Hospitals, creating the largest NHS trust in East Anglia and serving a population of over 800,000. Mike Meers continued, “The cloud-managed Evolve EMR supports the strategic alliance between the two hospitals by creating the capacity to provide a consistent approach to e-form development, with the aim to drive down operating costs across the two sites by £1.3m within 5 years.”

Cathy Gallagher, Head of Evolve Healthcare Solutions at Kainos commented, “Kainos has been a key supplier of cloud-based managed services to the UK Government Digital Service (GDS) projects for many years. The cloud-based Evolve EMR solution further enhances Kainos’ reputation for enabling digital transformation using cloud technologies. With patient records being a key information source for clinicians, this project represents increased confidence within healthcare organisations in the security and financial benefits of moving towards cloud-based solutions.”

On Thursday 11th April, I attended the sixth annual BelTech conference, curated by Kainos, which showcases Belfast’s creative, digital tech sector. Here’s a bit of a summary of what I learned at the event and the key takeaways.

What a turnout! Packed hall for our 6th annual @beltech2019 #EDU conference https://t.co/PRYLeg1DWB

— Gemma Crothers (@CrothersGemma) April 12, 2019

This year there were three tracks to choose from: Software, AI and Business. I chose to attend the Business track.

The conference was held at the spectacular Titanic Belfast building.

The @bfastmet team are in attendance today at #BelTech19 at @TitanicBelfast@sunil_extreme from @techstars is kicking off with the keynote speech 👌🏻

Make sure to grab a member of the College team to discuss how we can support your learning & development needs#MakeItAtTheMet pic.twitter.com/RDDIxFZCtd

— e3 at Belfast Met (@e3_belfastmet) April 11, 2019

The key-note speaker opening proceedings was Sunil Sharma, Managing Director of Techstars Toronto.

Sunil Sharma, Managing Director, Techstars Toronto (@sunil_extreme)

Sunil shared his story of how he went from working as a career diplomat in the Canadian Foreign Service to Managing Director for Techstars Toronto. Techstars choose startup companies to join the 3-month mentorship-driven accelerator where they invest $120K and provide hands-on mentorship and access to the Techstars Network. They put on events to help the start-ups achieve the investment they require to grow and scale. For example, they organise a “speed-dating” event where the entrepreneurs pitch to 10 companies in a row, in five minute slots. This helps gain the investment and refine their investment pitch technique.

He sees Northern Ireland as an ideal candidate for such an accelerator programme with its deep pool of IT talent.

Maria McKavanagh, CIO, Verv (@mmckav)

Maria gave an engaging talk about how her company Verv is harnessing the power of AI to provide their customers greater insight into their household electricity consumption.

The system works by attaching a device to the home smart meter which can detect the current / voltage characteristics of individual electrical appliances in the home. This allows an itemisation of the electricity bill, for example it might cost £1.50 to run the dishwasher.
The benefits of this are clear for reducing the energy bill, but it’s the additional, unexpected insights that make this really cool. For example, a washing machine will draw variable amounts of electricity depending the point in the cycle. When the water is draining out of the machine the Verv device can detect this. Over time, the period of the draining section of the cycle gets longer as it gets blocked. This information can eventually be used to predict when the washing machine is likely to break allow intervention before the disaster has occurred!

Maria went on to discuss future industry trends, in particular solar panels. Now, any excess energy produced is sold back into the national grid at a price far below that which it is purchased. Maria gave the example figures of 5p per unit to sell it back and 15p per unit to buy. It is possible to buy a battery to store the excess power generated. The Verv device learns over time how much energy the customer requires per day better than they know themselves by looking at their usage history. Then, instead of selling the excess back into the national grid, it can be sold to a neighbour at, for example, 10p per unit: peer-to-peer energy trading.

Her tips for succeeding as a start-up included keep the idea simple (but make sure it’s useful), funding is the key (although be careful of who you invite to invest), don’t fall foul of regulators (get them onboard if you can), branding is important, don’t plan too far ahead and keep customers at the centre of everything you do.

Chris Johnston, CEO, Adoreboard (@chrisjsays)

Our CEO @ChrisJsays will be at @beltech2019 on the 11th April discussing the importance of great #customer experiences and how to deliver them. You can still get your hands on some early bird tickets here: https://t.co/8kw2D7LvPc#CX #BelTechBusiness #Kainos pic.twitter.com/mvYmmepHZp

— Adoreboard (@Adoreboard) March 28, 2019

Chris began by offering the statistic that 80% of purchase are made based on emotion. He went on to propose that in this “experience economy” the only way to differentiate your company in the marketplace is by offering a better experience.

Originally a Queen’s University based company, Adoreboard help companies gain valuable feedback insights by producing an Adorescore metric. This is calculated using AI to amalgamate various customer insight data sources. The Adorescore allows the company to see how they are performing relative to other companies and gives rise to actionable insights into where the company is doing well and where it is doing badly.
Chris spoke about the Marginal Gains idea, from Dave Brailsford, the former head of Team GB Cycling. The idea is that by breaking down performance and improving each element by a marginal amount, this will in turn lead to an overall significant improvement. Chris’s view is that AI can be used to find these marginal gains, particularly in customer experience.

A critic of the marginal gains theory, Chris went on to explain, was Bradley Wiggins, a key member of Team GB Cycling who insisted that focus should be on getting the fundamentals right rather than on the margins.
Chris Johnston and Adoreboard propose that both are correct. The fundamentals and essentials of the service should be in place first and then attention can be turned to the magic, the differentiators that will give your company the edge.

Great panel on startup lessons from @SyndeoCx chaired by @oliverlennon #BelTech19 pic.twitter.com/fFHfSj1QEO

— Analytics Engines (@AnalyticsEng) April 11, 2019

Oliver Lennon, Founding CEO, Syndeo (@oliverlennon)

Oliver is a former Kainos employee, he gave an alternative view to the path of start-up success with hard won wisdom.

Oliver is the founding director of Syndeo. Syndeo is a new model for delivering customer service. Powered by Intelligent Chatbots, they enable businesses to connect with the new generation of consumers whilst engaging a community of experts.

He began his talk by pointing out the difference between Silicon Valley and Northern Ireland and believes we should not be trying to replicate the US tech hub here, but forging our own environment.

He went on to show a slide with the text: opportunityisnowhere. This could be read as “opportunity is nowhere” or else “opportunity is now here”. His point was that at times on the start-up journey things can seem bleak, but opportunities are always there if you look hard enough. Luck is involved but also plenty of hard work.

He is sceptical of the benefits of accelerator / incubator programmes for start-ups. These types of programmes offer the start-up company exposure to investors and venture capitalists for funding. Oliver believes that exposure to customers would be more beneficial for learning what is best for the new company. Learning to pitch to the customer first is more important than pitching to funders.

Oliver’s tips for success:

A few other tips Oliver offered in his closing:

Dr Rachel Gawley, Product Research Lead, PwC (@deadlytoes) and Roger Rooney, VP Operations, Options Technology (@rogerrooney)

The one and only @deadlytoes from @PwC_NI kicks off #BelTechEDU 2019! pic.twitter.com/gfcLjOUA5E

— BelTech (@beltech2019) April 12, 2019

Rachel and Roger had similar concepts to convey, namely trying to reduce the pain and risk from the start-up model without removing the innovation and disruptive nature.
Rachel described the start-up path:

  1. Innovate – Come up with a novel, desirable, feasible product idea.
  2. Grow – Ensure it is a viable business, repeatable and can be incrementally improved.
  3. Scale – Ramp it up, adding operations, automation to accelerate.

She noted that few start-ups make to the end of this process with many stumbling in the middle section due to a lack of support and infrastructure. In PwC New Ventures team, they are attempting to address this problem by providing promising start-ups with the support they need. However, there is a balance to be struck. With the backing of PwC support, infrastructure and capital to back it, how can it be discovered if the start-up is the real deal when it hasn’t gone through the proving ground that others have?

Once the business idea has been generated, they use minimal resources to validate the if it is a viable business within 12 weeks. This provides them with the quick feedback they need to know if it is an idea worth pursuing.

Roger relayed a similar message from Options Technology, this idea of harnessing the creativity and freedom to innovate of the start-up while at the same time leveraging the infrastructure of an established organisation.
He stressed four factors for Options Technology’s success in this:

Know your customer…

The Business Track at BelTech was focussed on start-ups, providing great advice for success in this area, however, many of the lessons can be applied to any business, no matter what size. The key piece of advice coming through from all the speakers: know your customer – it’s all about the customer.

BelTech is a fantastic conference showcasing the best of Belfast’s thriving IT sector.

Thanks again for joining us, we hope to see you all next year 🙌#BelTech2019@Citi @Philips @ExpleoGroup @AllstateNI pic.twitter.com/CeKVAtc578

— BelTech (@beltech2019) April 18, 2019

I had the pleasure of attending a 3 day Microsoft OpenHack in Paris, primarily based on Kubernetes and focusing on DevOps practices to achieve Zero Downtime deployments, this includes from the initial build of the container into Azure Container Registry to a successful release – Building a complete CI/CD pipeline. This was a rather tense but exciting three days.

I worked in a team of six which included two colleagues Steven Nicholl and Rob Marks

This blog will be an overview what we created, in following blogs I will go into detail points of interest which will be mentioned in the below summary.

The context of the OpenHack Project

Your team is the IT team of a fictitious insurance company. The company is offering their customers the ability to evaluate their driving skills. A mobile application collects the data from the car and sends them to a set of APIs which evaluate the trip that has just been completed. Your customers can connect to a web application that uses the same APIs to review their trips and their driving score. Any downtime of the APIs would greatly impact your business.

Architecture

The Kubernetes application is composed of :

Sounds fun? Lets get deploying!

Day 1

Tasks completed:-

We decided to use Azure DevOps for our CI/CD pipeline along with Board for various tasks, communication consisted off Microsoft Teams if required to share information along with DevOps Wiki.

Branching strategy

We implementing a branching policy without our Azure DevOps repo, a policy helps to protect the teams code quality, changing of code and enforces standards that are required for a successful branch merge.

Our policy included:-

Improve code quality with branch policies
Link work items to support traceability and manage dependencies

Continuous Integration (CI) is a theoretic process of automating the build and testing of code rigorously to ensure the code is valid and no errors exist in the build. This is typical completed every time a commit has happened within the repo. By doing this, it promotes automated testing of code that has been merged into a release branch of the repo.

CI emerged as a best practice because software developers often work in isolation, and then they need to integrate their changes with the rest of the team’s code base. Waiting days or weeks to integrate code creates many merge conflicts, hard to fix bugs, diverging code strategies, and duplicated efforts.

docs.microsoft.com

A more thorough explanation into Continuous Integration

Do we need to unit test?

Yes you do!

Unit Testing, the practice of dissecting your code in your smaller manageable pieces and individually subjecting each snippet to a series of tests. These tests can vary from language to language but the initial concept stays the same. Most languages do have unit testing frameworks

The more often you test, the faster you can catch initial problems.

What did we implement?

A successful Continuous Deployment..

Continuous Deployment (CD) – the concept of which successful changes to code are automatically released without human intervention and minimal downtime if any. Using CD, it removes the concept of “Release Day” moving over to a more automatic approach that releases a fully tested change into a successful build pipeline.

Day 1 finished with having a successful CI/CD pipeline in Azure DevOps that built the above work items using a branch/pull request policy that used to enforce workflow and gates between CI and CD activites.

Day 2

Tasks completed:-

What is a Blue/Green deployment?

Using a Blue/Green deployment is way of achieving zero-downtime deployment or upgrade to an existing application.

In theory, the “Blue” version is the Production running copy of the application and the “Green” version is the newer version of the existing application. Once the green version is ready, the versions would be swapped and “Green” would then be the Production environment with all traffic being routed to this version.

In Kubernetes it is slightly different, rather than it being two different applications – it is two sets of containers. These containers act in the same way and once the new environment is ready, they are swapped over. In our Hack, we used Helm to achieve this

Production traffic serviced by pods in Blue slot

Blue/Green deployment strategy using Kubernetes

Blue/Green deployment using Helm Charts

What did we configure?

A successful blue/green deployment downtime that consists of zero downtime deployments when required:-

Pipeline release consisting off:-

Configure your release pipeline for safe deployments

Production Slot now swapped Blue -> Green

Day 3

The final day of the OpenHack, tasks completed:-

We had to define and implementing a monitoring strategy, with the criteria:-

Lets get deploying.. we implemented a centralised monitoring dashboard utilizing Azure Monitor, Log Analytics with Azure SQL Analytics

Create and share custom dashboards in Azure Portal

Azure custom dashboard

Next, we used Azure monitor for containers, which has now got an update that doesn’t directly reside within Log Analytics, find out further

Snippet of Azure monitor for containers

For us to complete task “The average response time over a period of 10 seconds for the 2 of the 4 microservices” we had to write custom querying using Kusto (Azure query data language)

What is Kusto?

Tutorial on Kusto

The below dashboard created querying three one of the micro services.

To finish, we included automatic issue logging to Azure DevOps work items on the above, using a Logic App. This takes the alert body and adds the body to the new automatic issue as per below

Summary

The end of a great event, certainly any future OpenHacks I recommend you to attend; you get a solid mixture of tasks with the first couple starting at the beginning of a CI/CD pipeline and building a foundation for your team, getting to know each other, chat and discuss the strategy and what communication/source repo software etc you will be using.

Moving on, as the tasks progress they are becoming increasingly harder, challenging and complexity is increased throughout. These challenges will teach you how to implement advanced CI/CD deployment scenarios including the ability to create Blue/Green deployments.

I think having an experienced team in both software development and DevOps/infrastructure will give you the best outcome to completing a successful OpenHack like this. Additionally to this, you have an assigned Microsoft proctor per team who you can use to bounce ideas off and sometimes if required, a little assistance.

Moving forward, I will be correlating any new learnings and look at adding these to current and future projects. I look forward to the next Microsoft Event 

Have you ever been a position where you didn’t have enough data? Would that chatbot, recommendation system or fraud detector become possible if more data were available? If so, keep reading — this blog is for you!

Background

The Text Augmenter (henceforth referred to as TA) is a program which can be used to augment text records (generate new records from existing records) in order to supply Machine Learning projects with additional training data. I used research done by Jake Young as a jumping off point for TA. I wanted to use the methods that he had come up with but in a slightly more user-friendly way to be used in the team.

Now you know why I made this, so what does this actually look like?

This is the original data value I provided.

These are the data values returned by TA.

How TA Works

TA is based on the two augmentation methods set out in Jake’s article — augmenting the data based on using synonyms, and translations.

Synonym Augmentation

This works by breaking down each of the rows of text into individual words, then finding the keywords and replacing them with synonyms to create a new data record. This process is explained using the following flow chart:

Due to the nature of Synonym Augmentation, the number of results can vary wildly depending on the length of the original values. If longer sentences are used, then there will be more words to augment, and thus a larger return of data.

Validation: To ensure that the results of the Synonym Augmentation are usable for any given project, the user can specify a ‘blacklist’ which is a list of words that the user defines which will be ignored by the Augmentation function.

For example, the word ‘one’ gives 5 different data records. Using the blacklist means that none of these would show up in the augmented dataset. This is useful as it means that certain things that shouldn’t be augmented, for example words in the name of a law will not be augmented.

Translation Augmentation

This takes the data records and translates them into a different language then back into English using Microsoft Azure’s translation API. It does this for five languages chosen to mangle the syntax of the sentence. This process is explained using the following flow chart:

As each data value will be translated into five different languages, this function will always give a 500% return.

Validation: Universal Sentence Encoder is used to ensure that the augmented data records are close enough to the original values. This works by finding the ‘cosine similarity’ of the augmented value to the original value. The user is able to set a threshold for this similarity and any augmented values that fall outside of the threshold.

Benchmarking

TA has a built-in feature for benchmarking the original dataset against the augmented datasets using a variety of common Machine Learning algorithms. It uses the following:

Stochastic Gradient Descent [SGD]
Gaussian Naïve-Bayes [GNB] *
Complement Naïve-Bayes [CNB]
Linear Regression
Decision Tree Classifier [DTC] *
Multi-Layer Perceptron [MLP] *
* this classifier is used in the Flask application

The augmentation function splits each of the datasets up into training and test values, then trains the classifier and makes predictions. It then gives the user feedback about the classification: accuracy value, classification report and confusion matrix. It does this for all of the datasets — the original and the datasets created by the two methods of augmentation — and displays comparisons between them.

The output from the Flask application when benchmarking is performed.

How Can TA Be Used?

There are three different ways to use it, to allow for flexibility for users with differing levels of technical knowledge:

Python script
Currently, the main way we use TA is via the main Python script running on the Terminal. This method allows for the use of all of the selected benchmarking classifiers, and is the fastest way of using TA.

A screenshot from the python script.

Flask application
This project gave me my first ever opportunity to use Flask, a web framework written in Python. Using this, I built a webpage to house the functions for TA. Doing this allowed me to gain a better understanding of endpoints and requests having never really experienced much related to the web. I’m currently unsure about whether or not this will be hosted as a usable web page, or whether the primary method for use will be one of the other methods. The downside of this, is that the number of machine learning classifiers used for benchmarking bulk up the tool, and thus I have restricted the benchmarking to only three classifiers.

A screenshot from the Flask application.

Jupyter Notebook
An implementation of the Python script has been created as a Jupyter Notebook. This is separated into cells containing each of the functions, and an explanation of what they do and how to use them.

A screenshot from the Jupyter Notebook.

Conclusion: Using TA For A Project

After having completed TA recently, we have began using it in the team’s projects as a means to create more testing data in order to prove the effectiveness of it.

The Effectiveness of TA
TA took in a dataset of 11000 values, and returned an augmented dataset of 500000 values (4545% return). This means that the training for the algorithm was able to be more efficient and return better results.

We are planning to use TA in the future to assist in the development of any of our projects that this would be beneficial to.

Welcome back! As we roll on to episode two of my blogging series we delve into the often-quoted technical titles of ‘Software Engineering’ or ‘Software Development’.  These functions/roles in essence cover the foundation on which most technology companies are built on, the level of which varies between firms. Are you an engineer, programmer or developer? Are you all three!? I’m going to attempt to demystify this in the next few paragraphs for you!

But what does it mean?

Well, the actual engineers or developers are the creative minds behind computer programs. Some develop the applications that allow people to do specific tasks on a computer or another device. Others develop the underlying systems that run the devices or that control networks.

Software engineering / software development is an art form; it’s the magical art of creating a program which can perform a required task following a set of processes. Software development includes numerous steps such as thinking of an idea, designing a rough idea, implementation of the blueprint, testing, bug fixing and many more:

How does this apply?

The above is a more technical explanation of the theory behind it, but whilst writing this it got me thinking, how does this translate into the real world within a growing IT consultancy like Kainos? To get a zoomed-in view I asked one of our more junior engineers as well as a seasoned Solution Architect to help me out, this is what they said:

“Software Engineering is at the heart of the company. It underpins the concepts of how we apply our technical skills and knowledge to design, develop and deliver our innovative software solutions.  At Kainos, we don’t just deliver software to our customers, we take them on a journey so that they get the best experience possible.”

Chris – Trainee Software Engineer

‘Software engineering is about problem solving: about talking to people and understanding what their needs are, understanding what is possible and what might be possible, and figuring out how we can build or integrate things to meet that need. Whether it’s creating something completely new, combining things that haven’t worked together before, or finding ways to change how existing processes work, it’s about using technology to solve a problem in a way that works for people, has the quality to operate and achieve the customer’s aims, and has a positive impact on the users that need it.

It’s a collaborative process as much about people as it is about technology. We work with people who need the system to understand what their needs truly are, we work together to build, test and run things, and we work with businesses to improve how they can design, implement, operate and change based on those systems. We learn from the process of building things and we learn from how users interact with what we’ve built and we use that new knowledge to iterate and to build better systems.’

Will – Solution Architect

So, it would seem that every developer or engineer has a key role to play in the project lifecycle, albeit this will vary depending on the needs of the client or end user. Could it be that the very niche developers are the rock stars or footballers of our time, given that there is a growing demand for their services?  Maybe not quite, but there is no doubting their importance and the importance of effective engineering and development in the success of a project or company.

The next instalment moves towards storage, and ‘the cloud’ to be precise, this will take a look into the future of data and storage to infinity and beyond!

Find out more about our current roles in engineering here.

This post was written with Olivia Sharp, Kainos Product Consultant

We’re proud to say we ran our very first public product meetup last month, Let’s Talk Product, in our lovely new London office.

40 people working in and around product management joined us for an evening of talks over beers and pizza. Our theme was product discoveries – what they are, different ways of running one, and what you should definitely avoid.

The talks

Here’s a run-down of the brilliant talks from our 4 speakers, all experienced product leaders at Kainos.

Lean start-up discovery – Jayti Thakker

Jayti told us how to apply a lean methodology to discovery when there’s only a limited brief and vision from senior managers.

Learnings:

Discovery on a live service – Chirag Agarwal

Chirag talked about how to do continuous, time-boxed discoveries on a live service based on his experience on the UK passport service.

Learnings:

Using discovery to understand strategic priorities for an
organisation – Dan Kemp

Dan talked us through his experience of using discovery to work out an organisation’s priorities when it has multiple strategies that could influence your product’s direction.

Learnings:

Here be dragons! How not to run a discovery – Alison Coote

Alison talked about the typical traps to avoid during discoveries, with the help of 3 dragons.

While seemingly harmless, they have the potential to derail your discovery. How to keep your dragons away:

Next Let’s Talk Product meetups

Let’s Talk Product is all about sharing and discussing the best methods in product management to create products and services that make life better for users.

Our first event was a ‘discovery’ in how to
run a meetup. We saw lots of positive conversations and new connections being
made and got useful feedback which is helping us shape future sessions.

We’ll be running more events at our offices around the country with guest speakers from the product community.

Register for Let’s Talk Product Birmingham here.

Keep an eye on the Kainos twitter channel for news.

I have been working as a Data Scientist in Kainos for over two and a half years. Kainos helps their customers to create technology solutions that allows them to work smarter and faster. The word “Kainos” means innovation and so they are always keen to use new techniques to provide the most benefit to their customers including artificial intelligence and data analytics.

Kainos does not only provide a “shiny” model as an end product for their customers, they take their customers on an analytics journey where they move businesses from looking at descriptive analytics through to the benefits of predictive analytics. This journey is key to ensuring customers are getting the most out of their data and advanced analytics are used in an accurate and appropriate manner for that specific customer.

How I got the role as a Data Scientist

I studied a Masters in Mathematics with Statistics and Operational Research at Queen’s University Belfast. In my course, I studied a data mining module which introduced me to some machine learning techniques and inspired me to pursue a career in Data Science.

When I joined Kainos, there were only two other Data Scientists in the company that were part of a small data team. Over the past two years, this team has grown significantly, consisting of Data Engineers, Data Scientists and Data Analysts spread across the UK and Poland who deliver data transformation and analytical solutions to a variety of customers.

What I have done as a Data Scientist at Kainos

Throughout my time in Kainos, I have been working on projects involving data mining, data visualisation, machine learning and text analysis. I am currently working on a project with the Driving Vehicle & Standards Agency (DVSA) who aim to keep Britain’s roads safe by ensuring all vehicles obtain a MOT test of the same high standard across Great Britain.

The project seeks to identify any unusual testing patterns by vehicle testing stations and testers so that garages can be prioritised, allowing efficient allocation of examiners to monitor them. DVSA have the task of monitoring over 58,000 testers and 23,000 garages with only around 265 examiners. This requires one examiner to monitor the standards for over 200 testers.

Their old process was used for a long time and it was very static and easily manipulated. It was also completely dependent on human intervention which required more resources than existed.

I have been part of a team which has completely recreated this enforcement process by using machine learning techniques to identify unusual testing behaviour and prioritises the backlog of visits for the examiners. This new process is dynamic, changing monthly to accommodate for changes in the data and testing behaviour and so is adaptable to the surrounding data trends. It allows efficient use of a limited amount of resources and uses a combination of data and human intervention to create a more powerful process which supports the job of the examiners and allows them to work quicker and more efficiently.

This project was the winner of the AI & Machine Learning Project of the Year at the UK IT Industry awards in 2018. The key to its success was the journey that DVSA have taken around data and analytics. A few years ago, DVSA started using their data to produce dashboards and understand how their service was running, in order to find any areas they could improve. They gradually started to answer more complex questions, identify and improve their data and overall build up a really strong knowledge of their whole MOT service.

This journey is essential to allow advanced analytics to work effectively. To create a useful model, business knowledge and a solid understanding of the data are key to producing reliable results.

A chance to give back too

Alongside working with our customers, I’ve also had the opportunity to deliver a teacher development program to primary and secondary school teachers in collaboration with CCEA. This allows teachers to introduce coding and programming into their classrooms. I have been involved in helping build the resources which make up the progression pathway from Key Stage 2 through to Key Stage 3. This course is in high demand and has proven successful in developing teacher’s confidence in computational thinking, scratch and python.

I became involved in this initiative through recommendation of a colleague. I was keen to get involved as I have always felt that I had a significant lack of coding experience, and it was the biggest learning curve for me in this job. Through school and university, there was limited focus put on coding, however entering into the world of work, it became clear very quickly that these skills are imperative for a large range of jobs. Particularly for math graduates, the career options generally require a high level of ICT skills, with most requiring coding.

Through my own development at Kainos and by being part of this initiative with CCEA, it is clear there is a strong link between maths and coding. Therefore I am keen to help bridge the gap and allow coding and ICT to be used across the curriculum to provide children with skills that will benefit their future careers.

A typical day as a Data Scientist

Working as a data scientist is not all about creating models, in fact, this is a very small part of the overall role. Producing a model alone is not usually beneficial to a customer, it needs to be part of a bigger process and so there is much more required to produce a functioning product. Anyone who has ever worked with data will know that most of your time is spent cleansing and manipulating data. Often datasets are large which can make them susceptible to errors. Without removing these records, a model could be built which is actually wrong. There are often strange edge cases in the data which need to be considered and dealt with appropriately.

Building up a strong knowledge of the data, how it is created within the business, how it is used and what is available is key to building suitable advanced analytics solutions. On a general day, I would have a number of stakeholder meetings to present findings or plan our next steps. I could also be writing SQL to answer a business question, I could be reviewing my peers work, I could be writing R code to improve the currently implemented model or even creating a dashboard.

There is a large amount of variation in the role of a data scientist! On a daily basis, we will also collaborate with the rest of the data team, assisting the analysts with their queries, data modelling or discussing data structure and quality with the engineers.

How to be successful in a Data Science career

To be successful in companies like Kainos, you need more than just the technical knowledge: 

If you are from a maths/science background, I would suggest focusing on your coding skills. As you can imagine, joining an IT company with minimal coding experience was quite daunting and I can remember feeling completely overwhelmed when I had never even heard of terminal on a Mac, never mind knowing any of the commands! However, coding just takes practice and when you combine this with the logic and problem solving skills from a maths/science background, you can become a successful data scientist.

If you are from a computer science background, then I would suggest focusing on the maths and statistics. Being able to understand how the models work, producing suitable features for the model and understanding the data and output requires a good foundational knowledge of maths and statistics. We are often asked why you would need to understand the model when the code is already built. The power of understandable AI can sometimes outweigh the benefits of black box models. When you are able to describe to the customer how the model works and some of the underlying details, they are much more likely to trust the results at the end. I would also suggest starting with simple models, such as linear regression and clustering before diving into deep learning because quite often in reality the requirement from the customer and what is possible from the data is just a simple ML model!

Finally, find a role that you like! Data Science varies between companies, and even within a company you may find a variety of data scientists; They are expected to be experts in so many things. Expertise spread across members of the team is vital to a company’s success.

So you should understand what you love to do and ensure that the job responsibilities reflect those tasks.

Why you should get involved in Data Science

Everyone uses technology and there are endless opportunities in the IT industry, which will continue to grow in the near future. As companies grow, they need better solutions to ensure they are above their competition, requiring software engineers, architects, researchers, designers and data analysts to produce better applications, better websites or better products.

Data Science as a role is quite new but since data analytics, machine learning and AI are attracting more interest, more of these roles are starting to surface. Companies will use their data to create better products for the benefit of their own business and for their customers. So there has never been a better time to invest in yourself and build the skills required for a career in Data Science. 

Belfast and Cambridge, UK, 09, April 2019 – Kainos, a leading global provider of digital services and platforms, has been selected by Telensa, a leader in smart street lighting and smart city applications, as lead partner to build and support the City Data Guardian trust platform; collecting and protecting data as part of the Urban Data Project (UDP) smart cities initiative. City Data Guardian enables data transparency, empowering smart cities’ Chief Data Officers to build public trust and engagement. Delivered by a world-class consortium, including Microsoft, Telensa and Smart Cambridge, with technology from Qualcomm, the Urban Data Project is currently being rolled out in Cambridge.

City Data Guardian is a secure-by-design trust platform that puts cities in control of their data – applies privacy policies, ensures regulatory compliance and makes data available to improve services and drive future city revenues. The platform collects, stores, secures, manages and analyses data from Telensa’s Multi-Sensor Pods, which gather and fuse sensor data from devices, including camera and radar imaging, to measure levels of traffic, footfall, pollution and noise. Data processed at the edge is secured and transmitted to the platform, which applies stringent data governance and privacy controls to safeguard citizen data.

Using machine learning and AI, data collected is used to provide a more accurate view of urban areas and how they are used. Put into practice, this could, for example, cut the time and cost involved in traffic surveys by providing live feeds, giving local authorities realistic and accurate traffic data, making them more informed on real-time road network and traffic management issues.

Jon Lewis, VP Urban Data at Telensa, says: “Privacy and trust should be central to any smart city project and cities should retain full control of their data. We are committed to enabling cities to protect potentially sensitive citizen data and ensure transparency around how data is used. It was imperative that we partnered with a provider that understood this requirement, had expertise in building secure cloud-based data insight platforms and IoT solutions, and the digital capabilities to build a flexible platform to meet our need. Kainos’ position as Microsoft UK Partner of the Year, experience in developing on Microsoft Azure, and pedigree in providing digital services to government, made them the perfect fit for this project.”

City Data Guardian is built on Microsoft Azure, using Platform as a Service (PaaS) features such as IOT Hub, and will provide ongoing support as it is rolled out to other cities. Created through a secure-by-design approach, the platform will put cities in full control of who receives data under which circumstances, enabling greater transparency.

Russell Sloan, Divisional Director at Kainos, says: “We’re delighted to be working on such an ambitious project with Telensa, and to continue our close working relationship with Microsoft. We wholeheartedly support Telensa’s mission to strengthen citizen trust and policy transparency in urban data. The platform enables cities to apply technology in a transparent and ethical way, so that citizens can be confident about how their data is being collected and used. Once the Urban Data Project is rolled out to other cities around the world, the collective intelligence gathered will identify trends and patterns that could completely transform how we live.”

In this new blog series, hear from one of our technical recruiters on engineering and what it means to us here at Kainos.

Engineering at Kainos – what’s it all about? Ever wonder who is there behind the scenes, building the teams? Well, in this new blog series you’ll get some insight into that, and where our expertise in the field begins.

I suppose I should start with a bit about the who and the why I’m writing this series. Well, the who is me; Mark a technical recruiter with Kainos working as part of the engineering recruitment team.  The why is because I enjoy writing and debunking the jargon and myths surrounding today’s companies, and understanding what they actually do in real terms.

A good starting point therefore is an explanation of the core Kainos Digital Services business that anyone can understand and perhaps take an active interest in. This is the field I specialise in at Kainos, and where my passion lies.  

Who are we?

In basic terms we are a global provider of digital services and platforms, who perform ‘difficult digital transformation projects’ on all scales.  This means we take old analogue or manual processes and bring this forward into the digital (computer) age for ease of use by the end user (customer) – a recent example being the digitisation of the online MOT booking system.

What do we do?

These projects can take the form of smaller discovery projects (will it work?) that can last around six months, up to two years for larger full-scale design and implementation.  The larger the project the more ‘Scrum teams’ (more to follow on this topic in one of my upcoming posts!) needed on the ‘job’.  The teams are made up of both permanent technical employees and some IT contractors depending on project needs and timescales. Most of the time we deliver these for our client on site as this works more effectively for all parties, but we have a number of distributed Agile teams around the world too. As you can imagine – there’s a lot going on here and the diversity of our projects is vast.

Who we work with depends on who needs our skills and where we can help amongst other factors. Our business mix consists largely of Public Sector projects and a growing share of Private Sector work including major online retailers and booking platforms. Along with our planned employee growth we also hope to further increase our private client work in the new financial year.

As an introduction this won’t be anything new to most employees of Kainos, but it may help explain what we are about to your networks.  As these blogs develop more technical content and explanations of these in real terms will be prominent. 

What to expect in the next post

I’m going to be sharing my knowledge, expertise and opinions in a few blog posts over the next few months, and hopefully you’ll get some real insight into what we do here and how our recruitment processes really help drive the business too. My next post will be on Software Development and Engineering – what actually is it?

Thinking about a new career? Find out more about more about engineering at Kainos here.

Today Kainos released its updated Gender Pay Gap report for reporting period 2017-18. Since reporting our first Gender Pay Gap report last year, we have begun to implement initiatives across the organisation to ensure that we continue to be a business where both talent and diversity are valued.

Kainos operates equal pay between male and female colleagues operating in the same or similar roles.

Download the full report and our action plan here.

I’m Mary-Jane, and I joined Kainos in 2017. I recently changed the course of my career by completing the Big Data Academy at Kainos and wanted to share my experience with anyone who might be considering applying next time.

Why Data Engineering? 👩‍💻

I’m not one to shy away from my weaknesses, but rather seek to improve them in whatever way I can — Mary-Jane of a couple years ago didn’t think she’d ever have the technical skills or logical problem-solving ability to become a data engineer… that’s something really smart people who are maths geniuses do, right? But I decided that 2019 was the year I would conquer my fear of data, and all the functional, mathematical thinking that goes with it.

I had tinkered with some machine learning tools in 2018 during my time in the Kainos Applied Innovationteam but one thing that I kept stumbling upon was the challenge of data. There was either not enough of it, or too much of it and it wasn’t being managed well.

Identifying this problem left me keen to work towards solving it.

When I heard about the Kainos Big Data Academy, I had to apply and luckily for me, I was successful!

What is the Big Data Academy? 👩‍🎓

If you’ve never heard of the Kainos Big Data Academy, it consists of two weeks of training with an instructor in Gdansk, Poland (while eating lots of pierogies), followed by four weeks on an internal big data project to put your new skills to the test, then two weeks of self study to help you achieve the Cloudera CCA175 Spark and Hadoop Developer certification.

New tools 🛠️

I’m not going to go into too much depth about the tools we learned, I think that’s deserving of another blog in itself, but here’s a quick overview of the specific tools we learned:

These were the formal lessons we learned, but there were other things we picked up along the way. Particularly in the four-week internal project…

Practice Makes Perfect 📝

It’s hard to really understand new skills or tools and how they all fit together until you’ve actually implemented them in a real project. 

This is why the bulk of the Big Data Academy is an internal project where you can practice all you’ve learned and see how they can be applied in the real world.

Our internal project was a proof of concept application designed to process thousands of transaction data per second.

A basic overview of the architecture of our solution

There were other skills I picked up during the project that weren’t formally taught and I didn’t have prior experience with, such as:

What’s not mentioned, but definitely should be, is the mentorship and guidance you get throughout the academy. I was a software engineer before I started, but we also had technical architects on the academy. With the years of experience of the technical architects (both technical and communication/teamwork), their support through pair programming, code reviews, retrospectives, and feedback was my favourite part of the internal project.

Why is Kainos Interested? 🏢

Aside from the fact that Kainos invests a lot into the education and enhancement of their employees, as well as the local community, there is a dedicated Data & Analytics Capability at Kainos, which enables them to offer this as a service to their clients. 

Digital Transformation requires data & analytics in order to be truly transformational.

Growing this capability allows Kainos to seize more opportunities.

Is Data Engineering For You? 👩👨

Don’t be intimidated by the technologies or by a lack of maths in your background. If you enjoy a challenge and want to learn a whole new suite of technologies, then data engineering might be for you! And what better way to learn than with the fantastic training and support of the Big Data Academy at Kainos.

Find out more about Data careers at Kainos, whether you’re a grad or a seasoned professional!

Kainos was recognised as the 2018 Microsoft Country Partner of the Year for the UK in June 2018. Watch this video to see how we’re working with Microsoft to help grow the business and create transformational solutions for our customers.

We’ve had a fantastic year – our customers need solutions to solve real-world problems and having a single partner team at Microsoft helps us achieve that. Microsoft also has an ethical position and an ethos around customer success which strongly aligns with Kainos’.

Watch the video below:

Aislinn has worked in Kainos for 12 years and is currently the Tech Strategy Lead for Digital Services. She leads the Tech Steering Group and is a member of the Diversity and Inclusion Steering Group.

Tell us about yourself. What’s your background?

My journey has been made up of a set of fairly natural choices and a process of elimination. My mum and dad had their own business and I was working the till and making 10p mix-ups when I couldn’t even reach the counter. Growing up in a home-grown business led to a couple of fairly natural choices for me. While I wasn’t an all-rounder at school, I found I could get my head around maths so kept it going through to A level. I absolutely blame this on all that practice with the 10p mix-ups … one for the bag…. one for me…. one for the bag…. one for me J . After that I largely followed a process of elimination avoiding subjects I didn’t like and picking up new things where I could. That ended up with studying Maths, Computer Science and Business studies at A level, and it was a punt that worked! This is where I really found my home; from not being particularly interested in learning I found myself easily working late into the night simply because I enjoyed solving problems with code. That all led to only one degree I really wanted to do, software engineering at the University of Ulster, Jordanstown.

Tell us about your time in Kainos

I joined Kainos as a placement student and worked in a great team. I can’t give them enough credit; Eugene Fahy, Colette Kidd, Alison Coote… They were incredible mentors. Eugene, in particular, was an experienced developer and really focused on good practices, good quality code, doing the basics right and building on that. That inspired me and set me on the path I followed.

When I graduated I worked in another software house for a few years but I came back to Kainos because of the team and challenges; my heart was always there.

I worked on a project with Eircom for 3 years. I remember about 2 years into that, a round of promotions came up and many of the team were excited by the prospect of promotion, so even though I knew I wasn’t ready I thought I would throw my hat in the ring. I went for a Technical Architect (TA) interview and it was incredibly difficult. I realised just how much I needed to develop. Suffice to say I didn’t need to wait for feedback to know the job wasn’t mine… yet. While the interview was difficult and a real test of my nerves, it was really useful for the feedback and I used that to drive my development.

I sought, and got, face time with Tom Gray (CTO of Kainos); an incredible individual who really took time out from his demanding role to help me grow and develop. Over the next year I got regular feedback and new challenges that pushed me outside of my comfort zone. I failed several times over, but I learnt and grew with each one. I find now that most experiences like this are only a failure if I don’t take the time to learn from them!

So when I applied for TA again around a year later, I was successful! I still had loads to learn, but Kainos gradually increased the scale of responsibility. I moved quickly from writing code myself to leading scaled agile teams; in Kainos terms that meant moving upwards from TA (Technical Architect), to SA (Solution Architect) to PA (Principle Architect). I loved engaging with technical teams to help shape a design, estimate pieces of work and see that through delivery. For me, in all of this, the biggest challenge has been bringing people along and helping people bring their best to the team. The volume and strength of views are invaluable but also challenging to bring together.

Then I took on a new role, which crossed over between engineering and management. This was a great experience and I had some incredible learns; I found a new elevated respect for managers! Kainos is a place that will give people opportunities to step outside their immediate career path, which is invaluable. But ultimately, after a couple of great years, I returned to my engineering roots.

What is your current role?

I’m now working in Digital Services as Tech Strategy Lead, which is a slice of the CTO role. My focus is on technology, from the perspective of continuous improvement, influencing the type work we’re want to do and providing assurance of what we’re delivering. One great part of this role is that I get to engage in many different projects; this year alone I was able to get hands on to address challenges in a time critical to Brexit-related services, shaped a platform for smart cities and worked with tens of different projects supporting the teams in their technical delivery practices.

One of the most interesting areas is running the Tech Steering Group. Technologists come together to discuss where are we today and what are the big things we want to learn. We’ve hundreds of engineers and we know the landscape will keep changing so we need to keep challenging ourselves to update our skills so we can keep helping organisations transform their business with the right technology. We have to be ahead of the game if we’re to bring that thought leadership and experience to our clients! Up next, more Kubernettes, Serverless and Go but never forgetting to keep a good eye on those core best practices which date only slowly.

What are the main challenges you face?

Saying no and, truthfully, sometimes being more selfish. It’s important to keep focus on the goals of the role, but I also need to look after my own satisfaction – my goals and ambitions. It’s easy to get pulled into administration, management or product work because I tend to have opinions in these areas, but I know I’m happier with a technical challenge and want to keep those activities closer.

I have imposter syndrome, I never feel like I know enough. I look at the Kainos technologists and see incredible people, highly skilled and great to work with. The more I learn the more I realise how much I don’t know; but I would much rather have that and know that I work with great people than not have that and be unaware. I think that’s a good balance, a good place to be.

This isn’t unique to me or Kainos, I think most people will have a bit of imposter syndrome. I think it’s really important to recognise it as a good thing that simply needs to be managed. Use all those clever people around you to learn from… and you never know you may help them on their way.

Can you think of a highlight of your time at Kainos so far?

One explicit change after my experience in a people management role has been understanding people better and for me it means everything to see people develop. Of course it’s useful to get feedback and support from your seniors but, for me it’s even more rewarding when you see someone find their way through their journey with your help. That’s a lovely place to be, it’s great to have a positive impact on others.

What advice would you give someone looking to get into IT?

It’s easy to imagine a coder sitting at their laptop all day and not engaging, certainly that’s what most of my friends think I do. Yes, there are people that do that and they love it, and that works, but there are lots of different disciplines within technology. It’s worth understanding the variety of roles – talk to people in IT. There are lots of companies that have open days. Having a basic understanding of IT is really useful but you can move between roles as well. I have! While I’ve stayed mostly within the engineering side of things there are lots of people who have gone from technology into business analyst roles into product roles, the list is endless. You can find your space gradually, it doesn’t have to be a decision you make on day one and you should look for an organisation that will support that. Many do!

My number one rule is to prioritise enjoying coming into work each day. The world around us changes so quickly that you need to keep learning and investing in yourself and that is an awful lot easier when you enjoy what you’re doing.

Who inspires you?

I don’t have to look too far. There are loads of people from Kainos, our CTOs, architects, developers and so many in other disciplines of IT. The network of people I’ve met through Belfast meetups and conferences are incredible. There’s some fabulous support out there where people are simply giving up their time to help others. I’ve tried to write a list, but it falls off the end of the page… they are some of my best friends, they give me daily inspiration and support.

What’s next?

When I was starting out I was excited by promotion and highly motivated by a big challenge. A challenge is always good; I focus now on really enjoying that, learning new technologies and solving problems, but working with great people and enjoying developing others has a much bigger impact on my choices now.

If you’re interested in building a career in Kainos register for our Data Science bootcamp in Birmingham on 2 May. We have partnered with Microsoft to help women of all ages pursue a new, rewarding and creative career. For more information and to apply please visit: https://www.microsoft.com/en-gb/athome/digitalskills/women-in-tech/

This post picks up where my previous Enable post left off.

Evolve

The Evolve phase will see you learn from your initial successes and expand the impact of your data platform across the organisation.

8. Iterate continually

Your initial use case should take less than four weeks to successfully deliver. Immediate deadlines with clear success criteria will allow you to demonstrate results rapidly or, should your first use case prove unsuccessful, allow you to fail quickly and cheaply. Delivering in agile iterations enables this.

From the very first iteration you should focus on delivering insight to your end users. You should deliver an end-to-end vertical slice through your analytics platform, involving data acquisition, validation, aggregation, analysis and visualisation. This approach fosters a mind-set within your delivery team that every activity performed is done so to deliver new insight for business value. It ensures that the consumers of your analytics insight can assess and provide essential feedback, using familiar business intelligence tools, from the very first working version of your software.

As you iterate you will improve. Create a feedback loop and use your measures of success for each software version delivered to continually hone and streamline your delivery process.

9. Socialise success

Being successful is great, but you need to be seen to be successful to instigate further platform uptake. Your initial set of use cases most likely involved a small number of business departments, a number you will want to grow. Pick the most impactful use cases delivered and with that head of department, set out to communicate the achievements across the organisation. This could be as simple as a show-and-tell session in a conference room with a handful of business unit heads or it could be a global road-show across all internal locations. Either way, you should describe the efforts (investment) and rewards (insight) in such a way that it entices new departments to participate.

This is unashamedly a sales activity, where you are drumming up new business for your emerging platform. Increasing department uptake will raise the level of funding available to your analytics team allowing you to extend the reach and capability of your platform that in turn will help identify new use cases. Socialising success across the organisation will ensure that analytics projects are funded by the business teams for which they are created.

10. Advance knowledge

Heraclitus’ maxim – Everything changes and nothing stands still – is amplified across the data and analytics marketplace. The rate of change appears to be accelerating and the emergence of new technologies is almost a weekly occurrence.

Your team must keep pace in this rapidly-changing environment. The latest technologies and approaches should be monitored in the form of a watching brief and careful consideration should be given before implementation. You will find it useful to inspect the contents of the commercial Hadoop distributions to identify the supported technologies that you can consider to be enterprise ready.

You should budget for continued professional development – in the form of external training and accreditations – and industry event participation for your team members. This will keep them up-skilled and updated with the latest industry trends.

This International Women’s Day, Kainos is partnering with Microsoft to help attract and upskill women seeking to return to work after a break or to transfer from other sectors. Under the banner of #BalanceforBetter, the one-day bootcamps are designed to help women of all ages to pursue a new, rewarding and creative career in Data Science.

With a new report revealing that 80% of businesses surveyed said they plan to hire a Data Scientist in 2019, there are clearly many career opportunities in this area.

This demand is compounded by the prediction that more than 500,000 highly skilled workers will be needed to fill digital roles by 2020 – that’s three times the number of people who have graduated in computer science over the last ten years. Of those, only 5% have been female. Kainos’ bootcamp will play an important part in helping to address the tech skills gap and increase diversity in the industry.

Hosted by Data professionals from both Microsoft and Kainos, candidates will be encouraged to develop the digital skills they need to embark on a career in Data Science.

The Kainos bootcamp is one of nine being held across the UK and participants will complete Module 1 of the Data Science Microsoft Professional Program (MPP). Successful completion of the module offers a Certificate of Completion, funded by Kainos. Candidates then complete a further nine modules over six months to achieve the Data Science Microsoft Professional Program (MPP).

Kainos, Microsoft’s 2018 UK Partner of the Year, continues to grow and has career opportunities for Data Engineers and Scientists as well as opportunities to embark on a degree apprenticeship. Candidates accepted to the Data Science programme have the opportunity to access roles in leading employers like Kainos following completion of the bootcamp.

Aislinn McBride, Architect at Kainos, said: “We are looking for women with a passion for learning who want to try something new. The programme will enable them to explore data using a variety of visualization, analytical, and statistical techniques. It’s great to be able to offer opportunities for women to build careers with an innovative company like Kainos, just like I have.”

Kathryn Gilchrist, Recruitment Manager for Kainos, said: “We are thrilled to be partnering with Microsoft and are looking forward to welcoming women who want to learn new skills and start building a career in the technology sector. We want to bring women from a range of backgrounds together and give them an insight into data science and engineering, which suffer from a shortage of female employees. We need to move the dial on getting more women into the tech sector, and that starts with having a passion for learning and trying something new.”

The Kainos bootcamp will take place onMay 2nd in our Birmingham office. You can find out more about this exciting initiative and apply at https://www.microsoft.com/en-gb/athome/digitalskills/women-in-tech/.

Augmented and Virtual Reality have been around for over 30 years with the term “Virtual Reality” being coined in 1980’s by Jaron Lanier. Both technologies are quickly becoming more mainstream as the years go on; this is due to improvements in cost and the development techniques rapidly improving. Despite these technologies delivering different experiences, where VR is a fully immersive environment using a head mounted display, compared to AR where objects are laid on top of a real environment, they are both developed in fairly similar ways. An interesting thought is how we can simplify and streamline the development process even more.

Within the Applied Innovation team here at Kainos, we have been developing more immersive applications to highlight their potential business value. This emphasised to us, some of the current development issues and led us to researching whether we could build a tool to improve the experience.

A common tool for developing immersive experiences is Unity, a platform that allows development in a visual manner with scenes and functionality implemented through scripts and plugins. Over the past few weeks I’ve been working on a project for a client, in relation to how we can add functionality to Unity to enable simpler workflows and builds for multiple platforms with a single process.

Why Multiple Builds?

Unity has the ability to build for multiple platforms; to do this, you have to configure and build for each platform separately every time. We came up with the idea for a tool, that would enable us to set the configuration once, build and test on all the platforms we needed in one motion.

By creating this singular tool we are reducing the need to tailor the configurations each time we want to build for testing our project on a different device. The saved time can then be better spent testing and improving the project, rather than configuring build settings.

Not only does this tool reduce the need for configuring each platform, but it also removes the need to have a new project for each platform. Unity tends to recommend that for each platform you wish to build to, that you have a separate project. However, because the multiple build tool builds scenes based on the platforms selected, it only includes plugins and elements in the build files that are relevant for the platform being built in that moment. Pretty clever, right?

Example AR App — Photo by Patrick Schneider on Unsplash

What is the gain?

My team, are tasked with considering technologies that will be beneficial in future years. By looking into tools like Unity and developing a multiple build package, we are able to build upon Kainos’ AR and VR capabilities which will be key in years to come.

As a team, we can use this tool to test our Unity scenes on multiple platforms at the same time; for example we used this when creating and testing an AR scene. After starting some development on the tool, we discovered that we can build an AR scene to both mobile devices and VR platforms. The value in this, is allowing full interaction with the scene and enabling more comprehensive testing of an environment. Being able to experience the scene in VR and in a physical environment, we can test both object placement and interactions on two different build platforms. In doing so we are ensuring that in mutliple platform situations our application works as expected.

Viewing the environment on multiple platforms at the same time, significantly reduces the feedback loop during development; as both the user and the developer can quickly see and interact with the scene at the same time, on different platforms. With both the user and developer being able to see the scene, they are able to able to more simply outline changes. The multiple build tool enables the changes to be implemented, built and assessed in a repetitive manner until both parties are happy. This process of building to multiple platforms and iterative development creates a quick feedback loop for improving applications during development and testing.

This tool also enables our team to have a better test coverage on our projects; this is done by facilitating the testing of our scenes on a range of devices. Using Unity, we can create our project, add the multiple build tool on top and this one project can then be built for a range of platforms at the same time, allowing us to test the experience and performance on each one. The time saved configuring our projects allows for more rigorous testing, ensuring that we have compatibility across a range of different hardware specifications and that our project builds efficiently across the board.

A multiple platform build tool will reduce the learning curve for anyone new to working with Unity who wants to build and test on various devices. By removing the tedious and confusing configuration steps when setting up a project, we are reducing the amount of time and reducing the barrier to entry of developing immersive solutions. This reduction in set up time and the learning curve, enables a less experienced Unity user, to gain knowledge on the development process of a project in a shorter period of time. By using this one tool on top of projects we are also reducing the duplication of effort when creating builds and creating a standardised process across all projects.

The build tool can also be utillised alongside other forms of development platforms, such as creating experiences inside a VR environment that can then be tested as an AR experiences. By creating scenes while inside a VR environment we are able to see how the objects work together, physically interact with the objects and alter their placement all while inside the scene. Once we are happy with the scene we can take it out of the VR setting and pass it through the multiple build tool, to enable us to test our scene on multiple platforms.

Example of VR Scene — Made in Google Blocks

We will see the rise of this style of development in coming years with the advancement of tools like Microsoft Maquette and Google Blocks. Being able to build VR scenes to mobile platforms as AR applications, will also make the application more accessible to those without the technology necessary for VR experiences.

How did we do it?

The first option available is a range paid of packages that are available through the asset store; prices for these rise upwards from $10. These are viable options when looking to build to multiple platforms but only where they contain the platforms that you need, which isn’t always case.

For our solution we went with an open source repository on Github that we could then build on top of. The repository, at the time of use didn’t feature all the platforms that we needed for the project, for our needs we built upon the codebase and added some additional functionality. We spent time developing the iOS platform and altered the Android platform to reflect updates in phone hardware. On completing these changes, we tested both types of mobile device build and they proved to be highly successful!

The tool was able to determine which plugins were necessary for each device, so that packages were only added for each build if they were relevant to the platform. When it came to building AR scenes it became more complicated. Unity uses cameras to view scenes and has standard cameras or an AR camera which can sense depth for placing objects. If we want to deploy an AR scene on a VR platform, we have to include both the standard camera and an AR camera which is needed for mobile experiences. However, Unity was not able to build with both these cameras in the scene at the same time. The only way to get around this was to build a scene that contained both cameras and toggle the cameras in and out of the scene depending on the platform.

I will admit that I learnt a lot over the course of researching and developing this tool. As someone who had never touched Unity before this project I had to quickly pick up the basics and understand both VR and AR development at the same time. Overall I throughly enjoyed the challenge in building this solution and look forward to seeing my team make use of it in the future!

Unity has been pushing updates since its first release in 2005 and from the developments they’ve made in the last few updates, we can assume we will see the release of a tool that does this with ease soon.

If you are interested in contacting the Applied Innovation team to discover more about what we do, feel free to send us an email: appliedinnovation@kainos.com or check out some of our other projects here.

View the original medium article here.

Two students from St Mary’s Grammar School, Magherafelt, have created an app that has the potential not only to revolutionise the safeguarding of the global agri-food industry, but also save farmers billions of pounds in lost revenue each year.

CropSafe is a tool that leverages satellite technology to track crops and alert farmers and landowners about the spread of contamination and disease, a problem that is currently responsible for losses of around £5 billion globally – with crops such as wheat, barley and potatoes the hardest hit.

The boys came up with the concept at tech giant Kainos’ popular coding event for teens, Kainos CodeCamp, and in the early days, they took the opportunity to develop it further through attending a number of different programmes and hackathons hosted by the company.

It has significant advantages over existing crop surveying methods such as drones or pilot operated aircraft; a real time dashboard on a smartphone app allows landowners to clearly see areas needing attention; it removes the planning and delays associated with using drones and aircraft and costing an average of just £20 per acre surveyed, it is also much more affordable.

The boys John McElhone, Michael McLaughlin aged 18 and from agricultural backgrounds, have driven forward the idea based on a strong collective belief in the business need for CropSafe and its huge potential commercial viability.

Speaking on the duo’s behalf, John McElhone said: “Coming from a rural background, we were all well aware of the devastating loss of income to farmers when crops are diseased and contamination is allowed to spread. Our solution is to provide farmers with accurate satellite imagery clearly detailing information about the location of disease and its severity, therefore enabling them to quickly take steps to mitigate the problem.

“Last November we were invited along to San Francisco by a number of Silicon Valley Tech gurus, to pitch our app to interested investors.

“Since then we have completed the first working prototype of the app and we already have a waiting list of customers who want to subscribe as soon as product roll-out begins.”

“We’d like to thank Kainos for all their support to help us get to this point; from presentation pitch practice at CodeCamp, inspiring speakers at BelTech EDU and learning how to build a web app on Kainos’ work experience programme.

“Without their support, we wouldn’t have had the opportunity to bring it to a wider audience and pitch for investment, almost certainly we would not be at the point where we’re at today.”

After incubating the original idea at Kainos CodeCamp, the team attended BelTech EDU, where they pitched their idea to a Dragons’ Den style panel, winning first place and a cash prize of £1,000.

The following month, they pitched the product demo at Google HQ in Dublin and were again awarded first place in the county category and a space on the Angel Hack accelerator programme in Silicon Valley, where the app’s global potential has been recognised and supported.

Gemma Crothers, CSR Manager at Kainos said: “We are delighted to have been a catalyst in bringing this commercially viable app to fruition and congratulate the boys on their considerable success since completing the CodeCamp programme.

“It’s what the Kainos Academy, which includes CodeCamp, is all about. It offers young people a very unique opportunity; giving both technical guidance and helping to nurture their entrepreneurial spirit with practical business advice.”

Interested in attending BelTech 2019? Find out more here.

I recently attend the Microsoft Ignite UK Tour, which was a two day event in the London Excel arena. An event focused on Microsoft’s Azure and Office 365 offerings, consisting of 100+ deep-dive sessions and workshops along with 350+ experts!

Sessions attended:

A vast range of talks attending covering numerous areas of Microsoft Azure, I will summarise into some sections

DevOps – what is it?

My first talk included this question in the presentation, what really is DevOps?

Yes to all this!

DevOps is a combination of all of the above allowing the increase of velocity, ability to reduce downtime and human error. Combining all this into the projects growth from design through to development and further will lead to a better lifecycle of the product.

Statististics to reflect the use of DevOps:-

Source: 2018 Accelerate: State of DevOps: Strategies for a New Economy.” N. Forsgren, J. Humble, G. Kim. DevOps Research and Assessment (DORA)

DevOps is the union of people, process, and products to enable continuous delivery of value to our end users.

Donovan Brown – Microsoft

Azure DevOps

Using Azure DevOps to assist you, a great service offered by Microsoft to build workflows and pipelines to deploy your applications.

“Plan smarter, collaborate better and ship faster with a set of modern dev services.”

Azure DevOps

Azure DevOps has numerous tools to assist you

Further info on Azure Devops

Also Azure DevOps Resource Center

Storage

Nearly everything you want to deploy will consist of sort of storage, have you a storage strategy for this? Reasons to implement a strategy

There are numerous storage services available on Azure including:

IaaS

Disks – Managed disks or VHDs in a Storage Account, choices of standard HDD, premium SSD etc

Files – Azure Files is an offering that allows the configuration of SMB File Share Managed by Azure

PaaS

Blobs – Scalable, rest based cloud object storage

Tables – Ability to auto-scale, NoSQL store, very inexpensive!

Queues – Created at scale for Cloud Services

How do you chose a data storage method?

You need to decide on a number of factors including

Kind of data?

Properties of data?

Microsoft Ignite UK Tour

handy tutorial on how to choose a data approach in Azure

Azure Search

A modern cloud search as a service capability for your website or application, allowing you to quickly tune search results to create specific models that can tie in with search results ending in specific business goals.

Benefits include:

Azure Search Tutorial

Serverless

The evolution of applications and the cloud

On Premises -> IaaS -> PaaS -> Serverless

Azure Functions – This resources allows you to execute code based on events that you specify, no need to pay for an IaaS VM for a continuous period, pay on demand!

Functions by the numbers

Read my recent blog on Azure Functions

“When we can develop a solution in a week using Azure Functions versus four months using traditional methods, that represents a drastic improvement in our ability to solve business-critical problems”

Hristo Papazov – Relativity

If you need write stateful functions in a severless environment, there is an extension of Functions called Durable functions. This extension will manage state, checkpoints and restarts for you.

An example of using durable functions would be Function chaining – ability to execute functions on sequence in a particular order

Docs.microsoft.com

Other Serverless resources provided by Azure

Logic Apps – Design workflows and orchestrate processes

Event Grid – Manage all events that can trigger code

Further info on Azure Serverless Computing https://azure.microsoft.com/en-gb/overview/serverless-computing/

Containers

Why use Azure Kerbernetes Server(AKS)?

When to use AKS?

Azure Service Fabric

An azure offering that is a distributed systems platform that makes it easy to package, deploy and manage scalable and reliable microservices and containers.

Artifical Intelligence (AI)

It was good to hear how Microsoft use AI to assist with Machine Learning resulting in the creation of a number of services including Azure Cognitive Service

Azure Cognitive Services Documentation

Azure Cognitive Services include:

Microsoft AI Platform

Microsoft AI Platform

Azure Cognitive Services in containers

 Microsoft also offer the ability to take Machine Learning Models offline onto your device using xmarin, a good demo of this was shown on stage. Machine learning on  a mobile device in offline mode using the offline model!

That was fun!

A great event run by Microsoft, I look forward to the next one! Was also good to catchup with some people I speak to often on Twitter! – thanks to @kainossoftware for sending me!

Ignite UK Tour Presentation decks

Leading digital services and platforms company Kainos has been shortlisted in all three categories entered in this year’s Digital DNA Awards. Digital DNA awards celebrates our diverse range of talent in Northern Ireland across the Digital scene, from E–commerce to Fintech, Media and Digital & Creative.

Kainos has been shortlisted in the highly-coveted Best Large Tech Company of the Year category and for its Kainos Academy campaign in the Best Digital Marketing Campaign category. Jordan McDonald, a Senior Artificial Intelligence Engineer at Kainos, has also been shortlisted in the Young Person of the Year category.

The 2019 Digital DNA awards saw a record number of entries and the shortlist represents the highest calibre of technology businesses and individuals in Northern Ireland.

Making this shortlist is recognition of the company’s established reputation as a key player in Northern Ireland’s growing technology sector. Kainos is well known for investing substantially in learning and development initiatives in tandem with educators and playing an active role in the Northern Irish IT community, where it continues to create skilled jobs in the region. Through initiatives like A.I.Camp, Jordan McDonald is helping to develop the next generation of engineers. 

Russell Sloan, Director of Digital Services at Kainos, said “We’re delighted to be recognised in so many categories at such an important event in the tech industry’s calendar. It’s great to see recognition for our work in government and private sector, but even more rewarding for me to see the young talent we’re developing at Kainos recognised for their hard work and innovative edge.”

Victoria Shanks, Digital DNA judge and Executive Director and Global Head of Kx Services at First Derivatives, said “We know there is a rich seam of entrepreneurial tech talent in Northern Ireland but this year’s entries have really blown us away. They have proven that we are capable of creating technology businesses and talent which is not just impressive in a local sense but are capable of competing at the highest level on a global basis.

In addition, Digital DNA has nominated Kainos for ‘Company of the Year 2019’. This special category will be voted for by the public and you can vote for Kainos on Twitter using #DDNAKAI and #DDNAAWARDS2019.   

The Digital DNA awards take place at a gala dinner at St. Anne’s Cathedral on Thursday, 28th March.

AI is core to the next wave of digital transformation. In Kainos we focus on the application of AI, it’s not all about the technology, it is applying the right technology to solve real-world challenges.

We caught up with our new Head of AI, Austin Tanney to discuss his new role and what AI means for Kainos.

Austin has spent the last 20 years working in the commercial sector in a range of companies from start-ups to multinational corporations with a focus on Life Science, Healthcare and Technology. He is also facilitator of the Northern Ireland Artificial Intelligence Collaborative Network and is the co-founder and organiser of the Artificial Intelligence NI community.

Tell us a bit about your background

I am probably an unusual person to have working in Kainos, I’m pretty sure I’m the only molecular biologist or biomedical scientist working in Kainos at the moment. My background is science, I’m a biologist, not a computer scientist. I did my degree in biotechnology, my PHD in biomedical science and spent most of my career working in the pharma and diagnostics industry.

Quite early in my career I started working in genomics and then during my PHD developed an interest in analysing genomic information. To do this you have to use computational analysis, which was basically the advent of big data. This was where I got my first experience in working with machine learning and artificial intelligence (AI), although at the time we didn’t call it this, it was just bioinformatics and how we did our job. Since then it has been a keen interest for me, I was involved in developing products and solutions in this space so everything we did was driven by machine learning and AI, but ultimately that was what perked my initial interest and I’ve been associated with it ever since.

What characteristics do you think a head of AI should have?

This is an interesting question, as I’ve said when we look at AI or machine learning what I have found really interesting over the years is how transferable it is across sectors. If we look at Kainos’ successful project recently with DVSA to identify fraud, this is an award winning project but ultimately what has been done is anomaly detection, we are identifying anomalies and patterns with the data, which is exactly what we did in genomics. When you’re looking for genetic mutations, you’re looking for anomalies, you’re taking a baseline of information and identifying where things are not the way they should be.

Ultimately I think having a scientific focus makes a big difference, I was giving a Turing talk recently and I was out for dinner with the speakers afterwards. The conversations were very interesting as everyone was from different sectors, but it is clear how translatable this approach is.  One of the things that is really interesting is where AI has gone horribly wrong in organisations. What we tend to see as more people embrace AI, people from various different backgrounds and disciplines, they tend to take an approach of taking a lot of data, throwing it at some algorithms, getting a result and assume it is correct. That’s not a very scientific way to do things, if you’re a data scientist, I would put more emphasis on the scientist piece than the data piece. You can do data engineering, data science, data analysis but what is really different about how to correctly use machine learning and AI is to take a scientific approach and figuring out what is the best way to do things.

To make a good head of AI I think you need to take a scientific approach to things, it’s trying to figure out how to solve problems and trying to get the right answers. One of the other key things is how people communicate this information, whether this is giving public talks or working within the teams, communications is really important. We can’t work in isolation; this is not something that anyone is going to do alone.

Implementation of AI projects extends beyond just experts in AI, if we’re going to build a solution that is based on AI we need team members from across a wide variety of expertise because we’re not just doing analysis on a local computer and coming up with some numbers. We want to build production ready solutions that actually work in the real world and that means looking at things like CI/CD. Do we deploy models? How do we update them? How do we validate them and how do we make sure that they’re available and work.

In your life what choices have been fundamental to your career? Or if you were starting your career today, what would you change?

From a career perspective, no job that I have done in my adult life existed when I was born, I find this really interesting. I have two young kids, they’re 12 and 8 and I have no idea what jobs they are going to do when they grow up, the wold is changing so rapidly.

I was listening to a podcast on my way into work where Sam Harris was talking about what the future looks like as a result of automation. There are a lot of jobs today that are going to look different in the next 5/10/15 years.

We’re going to see AI making significant changes to the way the world works. My career was never really planned, I’ve gone through multiple roles, multiple sectors and I think ultimately critical thinking and problem solving are the key things that are a component of what I did.

The one key thing that we have as humans that I don’t see likely to be automated at any point in the near future is creativity. While it probably seems strange for someone in a data driven job to talk about creativity, the truth is that it takes creativity to figure out how to solve these problems. How to design and balance a study and how you take a scientific approach. I think science and art and creativity are probably a lot more closely linked than people think.

What are your main priorities in your new role at Kainos?

My main priorities here are to make AI a core part of what we do in Kainos. Kainos are extremely good at what they do and when we look to the future of digital transformation, AI is going to become a key component of this moving forward, whether that is public sector, healthcare or private sector. I think we’re going to see more use of AI across the board, so my desire is to help Kainos put AI at the heart of what we do.

In terms of achievements to date, I have been in the role 4 months now and when I joined the organisation we had a strategy in place which has a number of metrics, KPIs etc. that we want to hit and we have exceeded all of these. So I’m happy to say that we’re delivering on what we set out to do, we have a great pipeline of projects across all sectors and I’m really looking forward to delivering more of these working with great people.

Are there any people who have inspired you over the years? Who are they? In what way have they inspired you?

There has been so many people that have influenced and inspired me in the world of science and technology. Probably one of the things I’ve found the most important over the last say 5 years is a podcast from Joe Rogan. He is a very unusual guy, originally known as the presenter of Fear Factor, he is also a stand-up comedian and commentates on mixed martial arts but he has a podcast with a very broad range of guests from quantum physicists and geneticists to actors, musicians, comedians and mixed martial artists.

I also listen to Sam Harris podcast; Sam is a neuro scientist who is also a cultural philosopher but also has a huge interest in AI.
Personally I’m interested in phycology, philosophy, art, neuroscience, physics, martial arts and I love comedy, I think it is important to have a broad perspective on life and by having this we can learn a lot. 

What do you get up to in your spare time?

When I was doing my PHD, there was a tradition that you always put a quote at the start of your thesis. One of the quotes I used way back then has always stuck in my head, it was from an author called GK Chesterton. To tell the truth, I’ve never actually read his work but I came across a fantastic quote from him I liked “one of the most perplexing things in life is that there are far too many interesting things to be properly interested in any of them”.

I love that, I have far too many interests whether it is quantum physics, phycology, philosophy, mixed martial arts, red wine, cheese or food in general. I have a lot of interests but honestly don’t have enough time to properly focus on any of them.

If you were on a desert island what three things would you take with you?

I’m going to be a bit cheeky here and say;   
– A kindle with 20,000 books on it    
– A magical bottle of red wine that never ends    
– Finally, a bow and arrow because archery is really fun but also I have to eat

Who would play you in a movie?

This is a tough one, I’ve never thought about it before.

Maybe Jimmy Nesbitt, I met him once and we hung out at a club, he was good craic, he is a great actor and he knows how to have a good time. He doesn’t look anything like me or in any way vaguely similar in personality but why not.

Want to hear more from Austin? Join our upcoming webinar to see real examples of where AI has made a true impact on organisations.

https://register.gotowebinar.com/register/7081871228461793291

Leading digital services and platforms company Kainos has collaborated with celebrated local comic book artist PJ Holden to create DragonSlumber, a huge virtual spectacle aimed at age eight and up at this year’s NI Science Festival.

Taking place in W5 on Saturday 23rd February, DragonSlumber is a first in terms of its scale; at 15 x 12m, it is the largest immersive experience that has ever been created in Northern Ireland.

The project comes from the mind of legendary comic book artist PJ Holden, who is best known for his work on Judge Dredd for 2000AD, and the idea was brought to reality by immersive technology and tools from Kainos, supported by Digital Catapult NI.

Through VR and a mini 3D world, young adventurers will encounter giants, ogres, meteors and volcanoes in their quest to guide fairy Lottie back to her home in Fairy Nook.

Luke McNeice, Innovation Lead at Kainos said: “We’re proud to have worked with PJ to bring this amazing and innovative idea to life; the scale of it is a spectacle in itself and a powerful way to show what’s possible when technology meets art. 

“It’s totally different to any other immersive experience seen in NI before in that you will actually walk around the space, or 3D ‘world’, rather than staying static with the VR headset on.

“The experience has been mapped to the real space in W5 and has been designed by a pretty legendary artist, so it really will be something incredibly special and unmissable!” he added.

PJ Holden said: “I truly hope that this will delight children and young adults, I just want them to have a go and experience wonder.

“DragonSlumber is built around giants, dragons and vast towers; and with the VR headset on these things feel real, like they’re right beside you. What I really want is for people to enjoy it and feel amazed by the experience,” he finished.

Nigel McAlpine, Immersive Technology Lead at Digital Catapult NI said “Digital Catapult NI is delighted to be collaborating on this unique experience.  After PJ Holden came to the Digital Catapult Immersive Lab in Belfast wanting to explore the use of Virtual Reality drawing platforms, a connection was quickly made to an existing idea to explore how the experience might evolve, mapping a real-world space to a virtual version, to allow users to ‘walk through’ a work of art. It’s fantastic to see this come to fruition, combining the skills and technical knowledge in the Kainos team, with the considerable creative talents of PJ.”

DragonSlumber is open to age eight and up and is free of charge, please register in advance to avoid disappointment.

Quiet time sessions are available between 4pm – 5pm, when the exhibition space will have stronger lighting, the background music will be muted and sound effect volume lower.

Watch our brand new teaser video series for more!

There’s a lot of buzz around serverless solutions of late, but what’s it all about? Depending on who you talk to, it’s either the latest tech fad, or a major architectural shift in software delivery. Let’s take a look.

The Hosted Model

You may have a solution that looks similar to the figure below:

Cost savings can be made moving from bare metal servers to virtual machines (IaaS), removing the need to maintain physical hardware.

Further savings are made when moving to a Platform as a Service (PaaS) environment, where patching and maintaining infrastructure is no longer necessary. Surely this is as lean as it gets?

Uptime and Scale

No matter how popular our website is, there will always be quiet periods. In a hosted model, we’re paying to keep the lights on, even if there are no visitors. Some downtime we can expect and mandate for (shutting down servers outside business hours, for example), but we can’t get it right all of the time.

The expense of being open when business is slack and the expectation of prompt service at peak times

Conversely, we should also consider the busy periods — how will the application perform during peak business hours, and how will perform as the user base grows over time?

In this scenario (even in a PaaS environment) we have to decide on server hardware specifications and load balancing rules — under what circumstances do we allocate additional capacity, and how much to allocate? Again, these estimations will never be a perfect fit; there will always be leftover capacity in a well performing system, and that has to be paid for.

Serverless Websites — Single Page Applications

Consider a single page application, written in an appropriate framework such as Angular, React or Vue. When a user visits such a site, their browser downloads all site assets (javascript files, images, css etc.). The important distinction here is that it is the user’s browser that is responsible for all page rendering rather than a hosted website — the website itself is merely static content, which can be uploaded to a cloud storage account.

There are two major advantages here, namely cost and scale. Firstly, we only pay for cloud storage, which is a fraction of what we would spend on hosting. Secondly, the number of concurrent users is irrelevant here, as all page rendering is done client side, and thus we have limitless horizontal scale.

There are a number of disadvantages to using SPAs though:

Accessibility — modern accessibility guidelines state that websites must work with javascript disabled. This would not be possible in this case.

Limited indexing — pages cannot be indexed by search engines in the typical manner, which may be a problem. Consider an eCommerce site, where customers may use Google to find the best price for an item — our site may lose business to a competitor if it can’t be found, no matter how keenly priced the product is.

User flows — tools like Google Analytics provide great feedback on most popular pages and user journeys with minimal configuration. Additional work is required to get such tools to play nice with our serverless websites.

Serverless API — Functions in Azure

Functions are small blocks of user defined code hosted in Azure, designed to run for very short periods of time (with Lambdas being the equivalent in AWS).

Rather than the traditional hosted API where we pay for uptime, with Functions, payment is made based on execution and runtime.
If a function is never called, no cost in incurred, and the first million calls per month are free.

The same advantages apply — from a cost perspective, we aren’t being charged for absence of activity. Scale is automatically handled by the cloud provider, at no additional cost.

However, functions encourage the design of lean code from scratch, and may be difficult to retrofit to an existing solution. Furthermore, there can be a delay in execution if a function has not been run in a long time (aka “cold starts”), which may not suit applications dependent on high availability.

Serverless Storage — Table Storage and Cosmos DB

Azure SQL is the cloud hosted version of SQL Server, which we all know and love. However, relational databases require a lot of maintenance as they scale — indexes need to be created and recreated over time, data partitioned for optimal access times, and the underlying hardware needs to be considered, even in a PaaS environment.

Table Storage and Cosmos DB are two such serverless storage models provided by Azure, where hardware specifications are of no concern to the architect — costs are incurred separately for storage and retrieval.

Table storage is a cheap NoSQL data store that provides fast retrieval of data when searching in a single partition; Cosmos DB guarantees millisecond response times for all queries as indexes are automatically maintained and optimised by Azure, but is more expensive than table storage.

Again, cost and scale are the major advantages here, but careful consideration should be given as to the nature of the data stored — how it is to be queried; balance of read/write operations; what data is frequently used vs. what is archived. This is necessary to design and efficient, cost effective data model. Furthermore, if there are reporting needs, traditional database tooling will not work here; requiring the use of newer toolsets such as Power BI.

Opportunities for the Future

In this post, we’ve only looked at components we’re familiar with — a web front end, an API and a data store. It’s pretty easy to emphasise the cost and scale advantages here when talking about things we know well, but serverless architecture opportunities extend far beyond this.

Azure provides a wealth of intelligent consumption based services that work out of the box with minimal configuration, such as cognitive services for image, text and speech recognition; intelligent logging, monitoring and alerting with Application Insights; and secure authentication services for multiple identity providers.

Using these production ready services saves us the time and effort of creating our own solutions, and they are already designed to cater for scale.

Limitless opportunities with limitless scale at limited cost.

So yeah, that’s the fuss!