QA Consulting, The 4th Best Tech Company for Graduates!

Print

We are proud to announce that QA Consulting, part of the QA Group, have been voted the 4th best Tech Company for Graduates to Work For and in the top quartile of Top 100 Companies for Graduates to Work For in 2016/17.  This recognition is particularly important to us as the annual vote is run by TheJobCrowd and is regarded as one of the most prestigious and unique awards within the recruitment industry, as it’s based entirely on independent employee feedback.

Described as a the ‘TripAdvisor for Graduate Jobs’, TheJobCrowd hosts thousands of anonymously written reviews. Under the mantra of ‘No one knows better what a job involves then the person actually doing it’, these awards reveal the real feelings Graduates have for their employer, and QA are delighted to hear that QA Consulting rate so highly as a top Graduate employer.

With the volume of feedback relating to ‘great people and team ethos’, ‘fantastic working environment’ and ‘getting to work with cutting edge tech’, the feedback our people have given us reflects the ongoing effort and focus we at QA Consulting provide; a world-class working experience and a great platform to accelerate individuals careers.

Tony Lysak, Managing Director of QA Consulting, commented, “Hard work and fun is at the heart of QA Consulting.  Our Consultants go through an intense but rewarding 12-week training programme before hitting wider industry with their newly acquired skills.  It’s great to see all the hard work pay off and we’re delighted to receive the award and want to thank all our staff for working hard and contributing to our success.   QA Consulting have always valued our consultants and aim to provide them with the best platform to develop and further their career. We are giving young people the true progression route towards a successful career within the Software Development industry” He goes on to say, “The team in QA Consulting are ecstatic with our ranking and it’s a great testament to the quality and commitment of the QA Consulting team. The award marks a strong start to what is set to be another milestone year for The QA Academy, our consultants and our customers.”

About QA Consulting:

QA Consulting is a leading provider of Consulting Services to commercial and financial organisations and Government departments.  We operate a set of unique customer enablement programmes in which we provide industry leading capability in prominent DevOps, Big Data, Enterprise Middleware, App and Web Development, Cloud Computing, Cyber Security and Digital technologies.

We excel in recruiting, training and supplying our own specialist consultants within high demand by low supply specialist technologies. We provide our clients with the resources to help them be at the forefront of their industries.

DevOps Dissection – Source Sanctuary

Ed_Tech_Bytes

Welcome back to the dissection lab! This week let us travel into the realm of Source, taste the fruits of repository branching and have a cup of wisdom. If you’re ever developing software you must use some sort of version control system, otherwise known as source code management.

Source Code Management

 SCM is a means of allowing easy collaboration on a project, a whole group of developers can work together towards a common goal. Version-ing protects changes to the source code facilitating easy reverts and guards against hard drive failure. There are two varieties of SCM, client-server and distributed.

The client-server model uses a server as a single repository for source code. A developer would synchronise to that single repository in order to make changes, very simple pulling, pushing. The distributed model has a central server but every developer has a local copy of that repository on their HDD. An example of each are Subversion and Git, each with certain advantages and disadvantages.

Subversion

 SVN follows the client-server model. It is very easy to learn as at a basic level all you need to do is checkout the repository, make a change and commit it. A team of developers can pick it up very quickly with just 3 commands and anything more advanced (branching) can be incorporated on the fly. Unfortunately due to the centralised nature of SVN it requires network access. So if you’re on the move and don’t have internet access you cannot make any changes.  On the plus though newbies can pick up SVN with a really good GUI, TortoiseSVN.

Git

 Git is the absolute boss when it comes to SCM. The commands are a little more in-depth and there are more of them than SVN, with quite unfriendly error messages, but it allows development anywhere. If you had a server at home and a laptop on the road you would be able to continue working as you’d have a local copy of the repository; when you regain network access you can push your local changes to the server for the entire team. Additionally every development machine becomes a local backup of the repository, protecting against server failure. In general Git is faster than SVN anyway, it was built for the Linux kernel and can easily scale up to hundreds of developers, although as you’re checking out the entire repository you could be waiting on a long download. It’s a little unfriendly and the GUI is awful, to use Git you’ve just got to make the command line plunge (cmd is just better anyway).

 Branching and Merging Strategy

 No matter what SCM tool you go for it is best to follow some standard practices and properly manage the repository. Disasters can occur when developers are working on the same files concurrently, to counter this branching can be utilised. Branches are copies of the repository, within the repository, effectively a duplicate which allows work to be separated out. The generic idea is to preserve a master branch on the repository, this branch has passed integration tests and can be passed on to release. All development happens separate from this branch and can possibly occur across many branches depending on the nature of coding.

For instance, take a master branch at version at 1.0.0, a new feature for the product will have a feature branch created and designated as 1.1.0, while a hotfix to the master may be designated 1.0.1. During development once a branch has been completed and tested it is merged into the master, rebranding the master as that version. If the above hotfix is incorporated before the feature were completed then the new master would be merged into the feature to keep it up to date. An illustration is perhaps the best way to go:

123.png

This is quite rudimentary and it can get more complicated if you have even more future feature branches, but as a starting platform it’s quite nice. Ideally for long term development the features and hotfixes should be periodically merged into the master anyway (at the end of sprints), this defeats conflicts early. So now this removes some of the pain with parallel development and enables easy tracking of new features and hotfixes.

Thanks for reading, tune in next time for a breakdown of Issue Tracking with JIRA!

 

DevOps Dissection – Welcome to the Party!

Ed_Tech_Bytes

Hello and welcome to my DevOps Dissection! My name is Ed, I’m a first year DevOps Analyst at QA Consulting and I am currently deployed at a specialist insurance firm within the FTSE 250 index. I’m here to pull apart and examine the reasonably new and growing field of DevOps.

DevOps?

The realm of Development Operations is quite new. It was born into our world during an AGILE conference in 2008 and started its teething during 2009 (i.e., it started screaming and clamouring for attention). Here in 2016 we now have a cynical child, questioning its surroundings and trying to grasp an understanding of how the world works. This cynicism is a force for good; IT practices must change. Traditionally, trying to get developers and operational IT staff to continually build, test, and frequently deliver small software changes has been like trying to perform open heart surgery with garden shears, jump leads and a car battery. You’re going to have blood everywhere from different IT teams fighting and some very angry stakeholders that wanted fast delivery, not a stagnant and dead business.

If DevOps were a celestial body you could consider it as an exciting new resource-rich planet orbiting the star of Information Technology. At its core we have a solid and defiant mass of cultural change, the surrounding mantel consists of rapid, continually flowing currents of communication and feedback, and last, the crust is a pleasant wrapping of technical implementation and know-how.

In theory this comes together to form a bridge across IT teams, aiding communication and collaboration.

Success is measured by rapid feedback mechanisms between developers, testers, management and infrastructure; fast delivery to different IT teams and the end user; and open integration, visibility and communication across every facet of development, testing, delivery and leadership. Often the means of achieving this success will involve incrementally adding automation and breaking cultural barriers between how different groups like to operate. It is an uphill march.

NB: There is a subtle difference between feedback and communication; feedback is more product-oriented (build failure, test failure) and what’s working, what’s not; communication is synchronisation between different people/teams working together.

Cultural Change

Perhaps the most challenging obstacle is trying to persuade individuals to adopt new methods and technologies which will facilitate continuous integration, continuous delivery and work practice changes – these individual topics will be covered in future.

Unfortunately human nature is a stickler for stability and consistency, or at least what someone may believe is unwavering and offers security. This makes work flow advancements very difficult to implement as everyone loves the status quo. There is plenty I have resisted myself only to find that embracing new ideas and thoughts does truly satisfy the human desire to search for knowledge. The foundation for DevOps lies in establishing a river of cultural change. In due time I imagine I’ll be writing many more blogs posts about my own successes and failures at invoking this change.

Communication and Feedback

Simply the lifeblood of a high performing agile team. Silo’ed teams must be avoided as they lead to stagnant, toxic pools. Having two teams which are dependent on one another but operate separately is a recipe for resentment and malice. Ideally, different specialisations need to be glued together in order to develop T-shaped people (people who have a broad understanding of the various stages of the software life-cycle, while having a well-defined spike in a particular area). For instance if a developer were to be paired with a tester they may distribute knowledge between themselves leading to an understanding of each other’s roles. This will be a much deeper understanding than if the development team and testing team were split apart and silo’ed. This sharing of knowledge allows communication to take place and with a little technical assistance can be empowered where feedback can be absorbed and challenged face on.

Technology

The wrapping to all of this lies in the toys which this blog will be focussing on for the next few weeks. There is a plethora of technologies which allow the right flows of information and bring people together.  Further than just communication we have all sorts of gizmos that allow for rapid, reliable, and repeatable build and deployment processes. The categories of these tools branch through: source code management, continuous integration, deployment, configuration management, tracking and monitoring, among others.

So here we are. This is my understanding of DevOps and the role it plays. We have 3 key components that combine into a formidable strategy for growth and improvement. Enforcing cultural change, opening up communication and using technology to help is the way forward for software development and promoting learning and evolution.

In my next blog I will be taking you on a journey through the different tools involved in the particular brand of DevOps I fulfil on site, beginning with  Source Code Management!

Life on Site with Gareth Andrews

Gareth_Life_on_Site

One of the advantages of being a consultant is that the future is open to you. I am currently working towards getting a certification in Information Security Management, a certification that would better equip me to deal with the everyday risks and issues of security in a digital world.

Training and expanding on your skills is a must these days, where jobs and opportunities are difficult to come by. There are many training courses available and talks held to help you learn and understand everything from techniques to new technologies, there is not a single week where I feel like I’ve not developed in some way.

With every moment being a chance to develop, it’s hard to not see something great coming your way.

So that’s me, past, present and future. I hope that these blogs have been useful in understanding just what we do as consultants for QA Consulting, from the fast paced rush of fixing issues to the calm and collected analysis required to plan ahead for the next piece of work weeks before you even start creating the code.

QA Consulting has given me the opportunity to put my foot in the door for a very competitive market with all the support I need to work for a high end business straight out of the Academy. Going forward I hope to train and develop my skills in information security so that our clients can rest easy knowing that with my  skills and expertise I can help to protect their data.

 

Life on Site with Gareth Andrews

Gareth_Life_on_Site

So you’ve learnt about my past and my time at the academy, I think it’s now time for you to know about what I do on client site. I am currently working on a team focused towards delivering Microservices. Here’s a day in the life of me:

You start the day nice and early, checking all those work emails you receive a minute after you turn off your computer, and then you start by checking the JIRA board. Typically each day we assign ourselves a task and then get it completed by the end of the day, meaning each day we see progress both in the project and across the JIRA board.

Once you’ve started working away at your daily task you have a stand-up around half nine in the morning. In the next 15 minutes you hear from everyone in the team what they did the day before, any problems they had and what they are looking to do today, it is also the time when you learn about wide reaching factors that impact the project, such as changes to requirements or people being off on holiday for the next week. This means that once you’ve left the stand-up you are in the know of everything that should be happening that day.

So, back to the computer for an hour or so.

Seems like the team’s got a new piece of work coming up so it’s time for an impacting session. After reading through a document you’ve received a few days ago our product owner gives us a run-down for the reasons behind the new piece of work. It could be an extension of current work, or something completely different.

Everybody gets a chance to discuss their area of the project; for example what kind of code will be required, be it changing previous code or creating something entirely new. This impacting session will give the team an estimate into how much time it would take for the team to complete the project and its “impact” on the team.

12:00, time to go get some food for lunch. Remembering it’s Friday you head out the door instead of going to the canteen, laughter and chat following you as your team and friends grab a bite to eat for lunch. With full stomachs you return to work, mumbling about wanting to go back for dessert normally before returning to your task for the day.

Things don’t always go smoothly, and suddenly on your JIRA board there is an issue that’s affecting live. A bug has made it through the code!

Step one: investigate the bug. I run the code with the same data to try replicate the problem. At this point speed is of the essence, but you can’t make any mistakes either. With the problem repeated you notice that the error message is something you’ve seen before, and quickly find it in the code.

With a quick note on the JIRA issue and a phone call, you’ve already pushed the code through the continuous delivery environments, with all the automated tests running and checking that your fix won’t open up a Pandora’s Box of problems.

A few minutes later you receive a message saying that it’s been deployed to live and they are running the file again, with a smiley face and a thankful phone call confirming that the error has been fixed.

With that all done it’s time to return to your work for the day, finishing it just in time as you log your hours and move the task on the board to show everyone your progress for the day. Shutting down the machine and making sure everything is locked away, ready to repeat the process again tomorrow.

Join me next time when I will be discussing what comes next.

Ricky Savjani excelling onsite

Ricky_Excelling_on_site-01

It’s always fantastic to receive such great feedback from our clients. This week we would like to congratulate Ricky Savjani on outstanding work on client site.

Ricky completed his degree in Computer Science at The University of West England (UWE Bristol) in 2011. He then joined the QA Academy in 2012 specialising in Oracle SOA and Java training before starting on an internal project.

Ricky was deployed to his current client site in January 2014 where he began working with the DevOps technology stack, specifically Puppet and Linux. In the last year he has been concentrating on Infrastructure based work with Networking, Linux and Puppet. Alongside this he has been helping to design environments and looking after boundary controls where firewalls and security devices are deployed.

Our client, a large government body, commented  “In context of the recent PRP1 issues, I wanted to provide highly positive feedback on Ricky. He was more than forthcoming in solving the issue and very collaborative throughout, alongside this he demonstrated technical depth and clearly ‘knows his stuff’ – he is always assertive in debugging and logical/dynamic in diagnosing the exact problem. All in all he is a great asset to the team and the programme”.

Well done Ricky on your accomplishments on site and keep up the good work!

If you are interested in a career with QA Consulting checkout our Academy Website for more information on how you can build your future in tech.

Life at the Academy with Gareth Andrews

Gareth_at_the_Academy-01

Hi, my name is Gareth Andrews and I am currently work for QA Consulting as one of their consultants. Before joining QA Consulting I attended Hull University where I studied Computer Science with Games Development. 

After leaving University I decided to become a trainee Computer Science and ICT teacher, but I decided I wanted to continue using the skills I developed at University, so for me becoming a consultant was a logical conclusion.

In this blog I will be giving you a little insight into my Life at the Academy. From day one my experience was memorable, with both jokes and serious discussions forming the basis for our growth, both as people and professionals.  Treated as if we were in an office, we studied with growling levels of autonomy, eventually becoming independent in our development; from deciding the best way to approach a problem, to managing the teams work and personnel on a daily basis.

While at The Academy we operated as part of a team, working against (and sometimes with) another team, to produce several pieces of software as part of an interconnected project. We were in charge from the get go with initial designs and requirements being decided and found (or missed as it was in some cases), we quickly learnt where we needed to focus and develop.

Every day was different and how we worked changed on a daily basis; sometimes we would work in pairs using pair programming, and other times on our own. Helping us to adapt to the changing requirements and needs that we will face on client site.

During our time we were continually being examined, through a combination of workshops and presentations, all of which helping to prepare us for client site. 

Join me next time to find out about my experience at the QA Consulting Hackathon!.

QA Consultants excelling on site

Dan_Ian_Excelling_on_site-03

It is brilliant to see our consultants getting such great feedback from our clients. We would like to congratulate Ian Smith and Dan Mabbett on their outstanding work on client site.

Ian Smith completed his degree in Computer Science at The University of Brighton, whilst Dan Mabbett completed a degree in physics with particle physics at Queen Mary University. They both joined The QA Academy in October 2015.

Since being deployed in January both Ian and Dan have been working with a prominent central government department to help upgrade their Cloud Infrastructure. They have both shown proactive and innovative work, helping other members of the team in learning new technologies and developing and deploying the latest devices to be used by all those working within the client site.

Our client stated “They have been instrumental in helping to refine the build process, ensuring that the 50 devices required for the 1st week of rollout have been prepared and are ready to be brought up to the desk for deployment. They have also completed preparation of an additional three devices including an X250”. The client went on to say, “both have been exemplary in their work ethic and diligence”.

Dan Mabbett comments, “The QA Academy has been a massive help with teaching me Puppet, a tool that helped automate the creation of virtual servers so that the end-user can access the internet safely and securely. My training didn’t stop there though, I recently undertook a course in Azure to start working with the backup Cloud Infrastructure”.

It is brilliant to see our consultants enjoying their time at client site and making a positive impact so early on in their career. We look forward to seeing further progress in their careers with QA Consulting.

If you are interested in a career with QA Consulting have a look at our Academy Website for more information on how you can build your future in tech.

QA Consultant wins Implentation Manager of the Year at LivePerson

LivePerson_Colour

QA Consulting congratulates Damon Williams on being awarded Implementation Manager of the year at LivePerson.

Damon

After completing a degree in Accounting and Finance at the University of Portsmouth, Damon went on to study for a Master’s achieving a Distinction in Business Information Systems from Royal Holloway University. Shortly after he completed his studies, Damon joined the QA Consulting Academy in March 2014 where he quickly excelled and developed the skills to make him a perfect fit for our client, LivePerson.

Since joining LivePerson in October 2014, Damon’s hunger for knowledge and career progression has translated in to him grasping every available opportunity to learn new skills to support customers and colleagues alike.

Luc Trimouille, Head of Customer Success, EMEA, LivePerson commented “Damon has worked hard since joining the LivePerson Implementation Manager team working with a number of the large enterprise clients. He has put himself forward to take on the challenging and complex clients. He has also volunteered to work extended hours when the team has been stretched. He has a good positive attitude, helps others and is a great team asset”.

QA Consulting’s Managing Director, Tony Lysak made these comments on Damon’s achievement “QA’s Consultants are part of LivePerson’s world class service with teams blended throughout the USA and the UK.  We value and enjoy the longstanding global partnership and recognise LivePerson as both a fantastic employer and global partner.  It is great to see Damon, a QA Consultant, gain this award and be recognised as one of their own.”

It is great to see our consultants having a positive impact on our customer, and we are excited to see Damon progress further in his career with QA Consulting.