Senior Software Developer
Job Title: Senior Software Developer
Reports to: Software Development Manager
- Develop smart systems of working based on the Agile methodology with a focus on quality of output in line with client requirements; leading by example and supporting the team to achieve improved levels of productivity during working hours.
- Develop a technical leadership and mentoring role within the team, focussing efforts on developing the overall team capabilities.
- Develop processes and systems to drive and support quality and overall performance improvement and lead by example in implementing these within the development team.
- To promote the wellbeing of the team through smart working practices.
Architecture and Planning
- Work collaboratively with the Software Business Analyst/Product Owner to support the technical planning and architecture stage of the SDLC, ensuring requirements documentation is clear and offers defined deliverables and sprints for the development team.
- Support the Software Business Analyst/Product Owner to ensure the skills and competencies of the development team are used to best advantage when considering the allocation of tasks to individual team members.
- Design and agree the technical vision and architecture based on the requirements.
- Prioritise and focus on leading, training and developing the team, ensuring focussed and quality time is consistently spent in this area (ordinarily, this would represent around 25% of your working week).
- Take the lead in troubleshooting complex development and programming issues and providing guidance and support to the development team, including development of new features, enhancements, and resolving defects.
- Take ownership of high-profile, urgent or complex issues, using technical expertise and an understanding of client needs to ensure fast and effective creation and deployment of solutions.
- Provide guidance and direction to the team on technical issues arising, promoting creative and innovative approaches to meet the needs of clients while offering simple workable solutions that are user friendly
- Guide team development efforts towards successful project delivery – keep the focus on the end result and in achieving this through focussed efforts and utilising the skills and experience of the team.
- Oversee the work of the developers from a technical standpoint; using guidance and regular feedback to keep projects on track and to effectively identify potential issues at an early stage.
- Actively collaborate with the development team and wider business to develop, test and maintain applications that meet agreed customer specifications.
- Lead and motivate the team of developers to ensure focus on priorities and deliverables and the achievement of best value solutions that meet client needs, add value and ensure profit margins are maintained.
- Proactively support a focus on outputs, quality and working smarter and more effectively; identifying individual strengths and areas of interests and providing opportunities for these to develop while adding value to the project and business as a whole.
- Responsible for onboarding and mentoring newly recruited software developers, guiding and supporting them until they are up to speed with the technologies, systems and processes we use.
- Support and guide the team to ensure a positive workplace environment that promotes and values diversity and enhances workplace satisfaction.
- Responsible for all day to day administrative people tasks such as time recording, absence monitoring, feedback, recruitment and selection and any other such tasks as are congruent with the role of line manager.
- Take ownership of allocated software development sprints in accordance with the requirements documentation across the full SDLC, including development of new features, enhancements, and resolving defects.
- Develop creative solutions to client requirements using innovative and up to date programming and coding techniques.
- Create software applications using multiple technologies working in a SCRUM/Agile environment.
- Maintain a full understanding of the requirements documentation, defining and explaining these to the development team as necessary, to ensure all work is focussed on achieving the desired end result for clients.
- Create and deliver enhancements to existing products.
- Communicate and provide regular updates and feedback to the Software Development Manager and wider development team on progress, highlighting issues and proposing appropriate solutions as necessary.
- Produce well organised and documented source code.
- Contribute to technical design documentation.
- Collaborate and share information and knowledge proactively with other developers to improve knowledge and effectively resolve programming and development issues as they arise.
- Develop user documentation as necessary to support end-user capabilities and understanding of the new or enhanced features of the software.
- Overall responsibility for the quality assurance of all development solutions; ensuring a high level of testing is completed before solutions are provided to the client.
- Debug, perform tests cases and peer review the work of colleagues.
- Produce high quality documentation to inform future work and to ensure a systematic and consistent approach to all development work.
- Analyse, resolve and troubleshoot technical and application problems and produce clear documentation to support solutions.
- Adhere to high quality development principles in line with ISO 9001 while delivering resolutions on time and on budget.
- Research, evaluate and maintain a high level of knowledge and understanding about a range of software products and promote the use of new and emerging technologies as relevant to meet client requirements.
- Identify and encourage areas for growth and improvement within the team and proactively foster a learning culture that encourages innovation whilst managing risks.
- Act as an ambassador for the company at all times, ensuring the core values of Quality, Simplicity and Innovation are embedded into all we do.
- Proactively work to establish and maintain a learning mindset; actively sharing knowledge and expertise with the wider team.
- Any other duties as required to support the work of the company.
- Deep understanding of the tools & technologies used and experience in using them in a commercial environment.
- Proven ability to quickly and effectively troubleshoot complex technical problems and to find innovative solutions.
- Proven ability to work constructively with others in a collaborative environment and to guide and support more junior members of the team in their day to day tasks.
- Organised and a self-starter, requiring minimal supervision of day to day tasks.
- Clear and effective written and oral communication skills.
- Collaborate and communicate ideas with the development team to help improve the efficiently of the team.
- Quickly produce well-organised, optimised, and documented source code.
Qualifications & Experience:
- Batchelors Degree in Computing Science or equivalent commercial experience.
- Minimum of 3 years’ experience in a similar role within a commercial environment.
- Strong working knowledge of software development platforms.
- Strong understanding and experience of working within Agile/SCRUM methodologies.
- Excellent working knowledge of:
- Strong OOP skills
- Good working knowledge of any of these would be advantageous:
- Kendo UI
- Xamarin (Forms)
- SharePoint – Development and User-end and administration
- SQL and SQL Server
- Visual Studio
- Identity Server
- Responsive Design/Twitter Bootstrap
- ASP.NET MVC
- Entity Framework
- HTML, CSS
Evoke IT is a well-established and fast growing team offering a diverse range of software solutions to clients across a number of sectors. Examples of our work are available to view on the ‘case studies’ section of our website.
Our team are friendly, focused and hardworking. At Evoke IT, we encourage a learning mind-set and a collaborative approach to delivering high quality solutions. Our current vacancies are all newly created posts and therefore we would anticipate you having a large part to play in developing and shaping your new role to meet the emerging needs of the team and wider business.
This post is based in our office in the centre of Aberdeen. We work a 38.75 hour week with core hours of 0830 – 1700, with annual leave of 30 days per year, inclusive of public holiday entitlement. Should you have any queries in relation to the vacancies or working with us, please feel free to contact us for a chat.