Your main responsibilities as a Senior Software Developer/Tester will be to ensure that software released is of an acceptable standard, in line with both the company and customers’ requirements and to meet software release deadlines. You will also be expected to participate in the design of business processes and procedures, in order to improve the efficiency and reliability of testing. Your role will include assisting in the design of technical architecture of the operative solution, to provide continuous testing and development capabilities.
You will also be expected to lead the design of tests for; unit testing, integration testing, system testing and operational acceptance testing. You will be mentoring and coaching more junior team members and leading projects and teams towards successful deliveries, so strong communication, interpersonal skills and management skills are a must.
- Management - You will report to the Application Delivery Manager and Systems Architect and you will supervise the Testing Team
- Domains - Have a clear understanding of process design in both procedural and logical form and can map business processes into algorithms and reverse engineer algorithms into business processes. Domains the concept of Object Oriented programming.
- Have strong analytical and problem solving skills - Clearly displays a structured method for analysis and problem solving which includes, at least; information gathering, recognising the need to obtain more or better information and gathering the right amount, asking relevant questions to self and others with this in mind and uses appropriate methods and sources for obtaining information, recognises underlying issues and problems and identifies trends, association, correlation and or cause-effect relationships in data and organises information, relates clusters of information and integrates information and data to articulate complex meaning, evidence implication and reaches conclusions based in that evidence.
- Can identify flaws in logical designs - Has a methodical approach to logic and horizontal thinking and can identify easily, flaws and inconclusive threads in logical concepts, designs and representations.
- Can design general proofs - Has deductive reasoning and can develop proofs to theorems and solutions to problems by different methods e.g. direct proof, induction, construction, probabilistic, contradiction.
- Designs tests and proofs - By proving solutions, can design tests that provide the agreed required confidence interval that a routine is functional.
- Focuses on learning management skills, including leadership and mentoring and already displays them at work - Dedicates efforts to learn and acquire management skills, at least in areas of operation and team management/leadership and will exercise them as the opportunity arises.
- Understands the whole application cycle and is capable of rapidly and efficiently introducing him/herself in ongoing developments of different areas - Has experience in the whole application development life cycle that allows him/her to assist in the development of any of its parts on demand.
- Familiar with software production workflows and production tools - Does research in software production workflows, identifies concrete existing problems and provides applicable solutions to them. Is familiar with existing tools.
- Very strong learning skills and capable of quickly assimilating and working in new technologies - Previous experience in different technologies and languages gives her/him the ability to very quickly assimilate new technologies and languages by leveraging common patterns and knowledge correlation of different domains.
- Coaches juniors and transfers existing and new acquired knowledge to peers - Under supervision, can coach more junior team members and assists in progress reviews and evaluations. Can identify knowledge gaps in more junior developers and will actively try to fill them and or indirectly motivate the peer to work on them. Supervises their progress and motivates them to continue growing. Identify performance problems in more junior developer and helps the peer to overcome them.
Key Skills & Requirements
- Have a proven track record of commercial experience
- Have a strong background in software development (C++, C#, JS) and or mathematics, either by training or experience
- Have strong analytical and problem solving skills
- Have experience designing tests that reflect proofs of correctness or functions and algorithms
- Be knowledgeable in data structures
- Have knowledge of the whole application development cycle
- Have a strong knowledge of software development management and production tools (Jira, Mantis, Jenkins, CVS, GIT)
- Have demonstrable expertise with automatic unit testing and automatic UI testing
- Coach and mentor more junior members and spreads knowledge within the team
- Demonstrate leadership and project management skills
Problems you will frequently address involve the interpretation of bug reports and evaluation of requirements that can require constant interaction with colleagues, both within and outside of the testing department. To make the recommendation of when software has been adequately tested and can be released to customers.
Internal contact is a key feature of the job, you will be required to liaise where necessary with; other team members, programmers, support staff, training members and occasionally directly with the user base. Additionally, the post holder may be required to interface with clients. You will be responsible for maintaining confidentiality over any client data, maintaining test environments and the creation of testing plans, scripts and manuals/documentation as required. The position is solely office based with the potential for visits to clients and other premises.
If you have the experience and are currently looking for a new challenge, then please submit an up to date CV by using the ‘apply’ button below. For an informal chat, please phone 01752 252533 and ask for Rachel V. Many thanks for your interest.