As part of Barclaycard Business Solutions, this Senior Software Engineer will support Barclaycard TLG growth aspirations by providing commercially strong, highly secure and innovative payment solutions that will support and enhance our existing product suite. They will form part of a key Development team developing using the Agile SCRUM methodology fulfilling tasks in design, development and test in a fast paced and ever changing environment on real time systems where reliability and security is paramount. As part of the team they will be actively encouraged to offer opinions and influence at all stages to produce software they are proud of.
The role holder will be responsible for the day to day Development in an Agile SCRUM Development team to including estimation, design, development and testing as well as representing the team to internal and external stakeholders where required.
Strong Proven experience in commercial Development of server side applications and incorporating automated build and deployment processes using Apache Maven.
- Design Patterns
- Experience in multi-threaded high volume application development
- Web Services
- XML (Castor/JAXB)
- Any SQL Database (Oracle preferred)
- Unit testing
- Automated Testing
Spring Dependency Injection
Networking (for example F5, firewall, routers, etc.)
UML analysis and design
Eclipse IDE / IntelliJ IDE
Web page design
Knowledge and Expertise (essential)
Honours degree in Computer Science or equivalent
Strong commercial experience as a Software Developer, developing in Java in a commercial environment with a proven track record of success. Preferred Knowledge and Expertise
Experience of software development within the Payment Industry
Experience of developing in the Agile methodology familiarity with SCRUM methodology
Experience of developing software for multiple Operating Systems (Linux / Solaris / Windows)
Key Accountabilities & approximate time split (%)
Developer in Agile SCRUM team 65%
Actively participate in all aspects of Development using the Agile SCRUM methodology including:
Provide 3rd Line Support 20%
- Help provide input into high level estimations of Epics
- Create an original design for a piece of work and/or participate in design meetings to review and provide feedback on a design
- Understand and break down user stories into Development Tasks and estimate work
- Work with BA’s and other stakeholders to help provide technical input to User stories
- Report on progress in daily stand-up meetings, highlighting risks or concerns and work as part of the team to mitigate them
- Code tasks to estimated time and to the high expected quality ensuring they meet all agreed acceptance criteria and include all agreed Unit and Regression tests.
- Demonstrate Deliverables in “show and tell sessions” showing functionality to internal and external stakeholders and position level of technical description accordingly.
- As part of the SCRUM team provide support for UAT testing in developing methods of automation and manual testing.
- Provide proactive advice regarding the processes, tools and architecture used by the team
- Where appropriate solicit, question and critique the requirements
- Where required take on additional responsibility to provide admin support for development tools like Redmine, Subversion etc.
Support our second line support team to help diagnose and resolve low level technical issues with the new and existing product applications.
Where appropriate represent the Development department as the technical consultant in internal and client facing meetings.
Where appropriate attend client conference call and/or meetings to provide technical and industry knowledge expertise
Provide Release Support 5%
When required participate as part of the Development team to facilitate successful releases of software into our Integration environments including the creation of any deployment scripts and packages to help facilitate this.
Risk and Control Objective
Risk and Governance Management 10%
- Understand the appropriate Policies & Standards applicable to the role through reading the Code of Conduct and other training allocated to the role. Where responsible for risks and controls ensure that these are appropriate and fit for purpose
- Ensure effective risk and rigour management of all Digital Banking development activities.
- Ensure all appropriate governance frameworks, structures and processes are in place and adhered to for Digital Banking developments. Ensure that mitigating and performance improvement actions are in place and clearly owned
- Ensure that all activities and duties are carried out in full compliance with regulatory requirements, Barclays Operational Risk Framework and internal Barclays Policies and Standards
- Maintain stakeholder links with all relevant risk partners and manage the risk (including security and fraud) agenda across Digital Banking developments