Software Developer Ref. 379
Full time, part time and flexible working patterns will be considered. Any additional hours worked will be paid or can be taken as time off in Lieu.
HMGCC has a unique and exciting opportunity for Software Developers to join our growing Team.
HMGCC aspires to be the best place you'll ever work - we'll invest heavily in your career development through technical training programmes, professional accreditation, mentoring and on the-job training.
As a key team member you'll get to design, develop, test, deploy and maintain software solutions that solve real, and often unique, technical problems. As an Experienced Software Developer you'll be expected to deliver work packages both independently and collaboratively, but always with support when needed. You may also take on the responsibility of mentoring or coaching more junior engineers.
Our work is hugely varied. Project time scales range from a couple of weeks to a few years, and we use a huge variety of technology stacks, so we need versatile and passionate people to tackle new problems as we continue to push technology forward. At HMGCC you'll see how your work can really make a difference.
We are looking for exceptional candidates with a genuine interest in computing and the ability to demonstrate good programming.
We need you to already have the ability to:
- Design, develop and test software in one or more of C, C++, C#, Java and Objective-C
- Develop for one or more of Windows, Linux, macOS, Android or iOS
- Reason about the performance of different data structures and algorithms
- Understand and intelligently debug both existing and new software
- Deliver modules of substantial software systems unaided
The following are desirable and would strengthen your application:
- Experience of object oriented programming
- Scripting skills such as Python, PowerShell, Perl or Bash
- Experience of TDD / agile / scrum
- Solid experience of using one or more of the following:
- Visual Studio, developing for Windows
- JetBrains lntelliJ-based IDEs, developing for Linux, Android or the Web
- Xcode, developing for iOS or macOS
- Previous experience of unit testing, IOC, continuous integration and static analysis
- Knowledge of Networking and Communications (e.g. TCP/IP, HTTP, Protocol Buffers, application of encryption and compression)
Putting your skills to use
What makes HMGCC different is that you'll have the opportunity to get involved in the whole process. You'll use your skill and experience to create a wide range of components whilst working with a variety of customers and design engineers. We'll give you the opportunity to be creative and decide how you want to get the work done, as long as you can deliver. We ask that in return you have a willingness to learn and are willing to take on responsibility.
1.Design, develop and document software to the highest standards.
2.Verify designs by creating and implementing functional tests and performing code review.
3.Provide product support and investigate reported defects.
4.Contribute to project planning and meetings.
5.Supervise or mentor less experienced engineers.
Firstly, you will need to upload your CV and submit a short application form, our recruitment team will then conduct a sift of your application.
Successful applicants will be invited to a telephone interview, which will include some competency based questions and will explore your background and motivation to work for HMGCC. At the same time as your telephone interview invite, you will be asked to complete an online programming test to assess your problem solving, debugging and diagnostics skills.
If successful, you will be invited to a face to face interview with our Hiring Team and an Occupational Psychologist.
Please note dependent on the recruitment requirements, we withhold the right to bring forward the closing date for this role from the original closing date.
To find out more about HMGCC and how we are truly individual both as an organisation and an employer visit our 'about us’ page.
*If you are moving to the area we can discuss the possibility of a relocation package.