London Jobs |
Manchester Jobs |
Liverpool Jobs |
Nottingham Jobs |
Birmingham Jobs |
Cambridge Jobs |
Glasgow Jobs |
Bristol Jobs |
Wales Jobs |
London Jobs |
Manchester Jobs |
Liverpool Jobs |
Nottingham Jobs |
Birmingham Jobs |
Cambridge Jobs |
Glasgow Jobs |
Bristol Jobs |
Wales Jobs |
Oil & Gas Jobs |
Banking Jobs |
Construction Jobs |
Top Management Jobs |
IT - Software Jobs |
Medical Healthcare Jobs |
Purchase / Logistics Jobs |
Sales |
Ajax Jobs |
Designing Jobs |
ASP .NET Jobs |
Java Jobs |
MySQL Jobs |
Sap hr Jobs |
Software Testing Jobs |
Html Jobs |
Job Location | Cardiff |
Education | Not Mentioned |
Salary | £31,365 per annum |
Industry | Not Mentioned |
Functional Area | Not Mentioned |
Job Type | Permanent, full-time |
Senior Software Developer (Data Migration)Salary: £31,365 to £37,890Hours:37.5hrs per weekPermanentCardiffJob Summary/Job Purpose:The post holder will have a very high level of technical expertise and be expected to have the skill to routinely analyse and solve highly complex technical problems with only an infrequent need to call upon senior staff for advice.The main aspect of the role is to develop robust software for National software applications, databases, integration engines and websites and to undertake any associated administrative tasks in accordance with advice and guidance provided by senior staff and customers. The post holder must ensure that software applications integrate and perform to the requirements and satisfaction of senior staff, users and clinical and technical design standards.The post holder shall also assess and instruct junior colleagues, analysing their strengths and weaknesses and working with them to develop their skills and technical expertise.In addition to software development the post holder is also expected to assist with second or third line software support as and when appropriate.DUTIES/RESPONSIBILITIES:*Work closely with colleagues and customers on a daily basis and primarily through face-to-face communication to complete tasks.*Discuss progress and notify senior staff of impediments during regular team meetings such as Daily SCRUMS.*Discuss ideas with colleagues and review tasks and priorities in collaboration with other team members and senior staff.*Contribute ideas on how the team can become more effective - at regular team meetings such as Sprint retrospectives for example.*Mentor junior colleagues, analysing their strengths and weaknesses and providing advice and guidance to develop their skills and abilities (particularly their technical expertise).*Actively listen to the advice and guidance of colleagues and tune behaviour accordingly - for example listen to suggestions from colleagues during pair programming sessions and code reviews.*Speak confidently to groups of users or peers; Demonstrating ideas, concepts and software and answering questions.*Discuss ideas with their line manager on ways to improve their performance and advance personal development - at personal development reviews.*An excellent understanding of an object oriented programming, procedural, declarative or structured querying programming language.*An in-depth understanding of at least one popular software development methodology (such as Agile).*A good understanding of the principles of software craftsmanship and good software design.*A good understanding of relational databases, database design and the Structured Query Language.*Proven experience using an Integrated Development Environment (IDE) to write software code and produce elegant, robust and maintainable software applications.*Practical experience using a popular software development framework (such as .NET or Java).*A command of the principles of good software design using the principles of SOLID and object oriented programming.*Practical experience of writing manual or automated unit and integration tests.*A good command of English grammar and good writing skills.*Practical experience using source control systems.*The post holder will be familiar with Windows PC and server operating systems.The post holder must be able to:-*Analyse requirements specifications (that maybe provided in a variety of formats) and assess their suitability before proceeding to the software build stage.*Using technical expertise and experience, guide users and other stakeholders on the most effective way to solve business problems when developing bespoke software applications.*Analyse the strengths and weaknesses of junior staff and provide advice and guidance, through mentoring, to improve their technical expertise.*Solve complex technical and business logic problems, providing for the most part, elegant solutions that make use of suitable software patterns.*Distinguish when it is appropriate to tackle problems using ones own initiative and when to ask for support from colleagues or more senior members of staff.*Balance the need for adequate software testing and elegant design with the need to fulfil the delivery schedule set out by senior staff, customers and stakeholders.*Assess the suitability of candidates for software developer roles within the organisation.*Contribute to Personal Development Reviews by reflecting on his or her own performance and suggesting personal objectives to develop skills and improve.PERSON SPECIFICATIONQualifications and/or KnowledgeBachelors degree in Software Development or equivalent qualifications, knowledge or experience.Foundation qualification in an agile development methodology (for example the BCS Foundation Agile).Advanced qualification in an agile development methodology (for example the Professional Scrum master).Experience*Proven experience of software development role in a formal development environment.*Evidence of experience with Windows PC and server operating systems.*Experience developing software for Clinical Information or Healthcare systems.*Experience of working in an Agile Development environment (e.g. Scrum).*Good working knowledge of relational database systems and associated database administration activities.*Able to learn new technologies and IT systems quickly through both self-study and professional courses.*Determined, patient and self-motivated.*Highly professional and flexible attitude to work.Certes Computing (and all of its subsidiary companies) is committed to promoting equality and diversity in its business operations.