Full Stack Software Engineer
The suitable candidate will be engineering solutions across multiple technology stacks. Your primary role within the team will be engineering suitable, scalable and maintainable software solutions. You will be leading and/or assisting in designing solutions that work at scale; that are testable and meet the demands of our customers and internal stakeholders.
Your role will also be adaptive; you will work with product functional owners to ensure the requirements consider all appropriate technical and security matters. You will work with the QA team members to develop and define test plans as functional areas evolve. You will report directly to the teams lead software engineer; working with and in close collaboration of deliverable working software.
The role involves working with co-located teams working across different countries. It’s important to note due to time zone considerations that all teams are expected to show due courtesy and consideration when working with members across time zones.
Specific Duties and Responsibilities
- Working with the wider team to plan, design and implement relevant software changes.
- Build solutions that are technically sound, that are unit testable.
- Work closely with the team to build automation both at unit level and UX regression level.
- Estimate, measure and record effort spent on development in accordance with product guidelines.
- Working individually and as part of a team towards the aims and objectives of the product and the company as a whole..
- To fulfil software engineering requirements in terms of administrative tasks and to conform to departmental policies and procedures.
- Maintain ongoing working co-operation with managers and staff within the department and the wider workplace.
The above duties and responsibilities should be regarded as neither exclusive nor exhaustive, as the post holder may be required to undertake other reasonably determined duties commensurate with the post, without changing the general character of the post.
Attributes of the Person
- Working as part of a team, be able to articulate engineering sound solutions meeting the user, business, technical and security requirements.
- Good problem solving and troubleshooting skills, being able to communicate both verbally and in writing.
- Experience of working in a team of people, applying agile approaches to engineering solutions.
- Preferred, 2:1 Upper second-degree Bachelors in a relevant discipline. 2:2 Lower second will also be considered if evidenced project demonstrates suitable technical and design abilities.
- A deep care for your linework and a drive to work towards excellence, even under pressure.
Skills & Qualities
- Develop solutions that are technically viable, scalable and testable.
- Good knowledge of advanced database concepts, such as modelling, performance and normalization.
- Working within your team as well as wider stakeholders. Ensuring work item acceptance criteria is inclusive of the necessary technical and security considerations.
- Having a positive ‘can do’ attitude towards the day to day workings of the product team.
- Have a mature and responsible attitude to keeping records and caring for equipment and other assets.
- Have an adaptable and flexible approach to work. Our software and services do not sleep and at times this requires working beyond standard hours in order to deliver to our customers.
- Be committed to self-development, this role requires you to keep on top of the latest developments in technology. Working with the team to bring in new approaches and techniques to deliver quality and stability in line with the product direction.
- Play an active interest in security/pen-testing techniques, ensuring you follow IS-17 security requirements where applicable.
- Object-oriented programming concepts
- Knowledge of Agile, build automation tools and processes.
- Understanding of the full software development life cycle, from inception to delivery.
- Ability to think on an international scale when developing technical solutions.