Striving for excellence is in our DNA. Since 1993, we have been helping the world’s leading companies imagine, design, engineer, and deliver software and digital experiences that change the world. We are more than just specialists, we are experts.
Software Engineer (JS) belongs to Agile Delivery Team and is responsible for all aspects of the analysis, design, development, building and testing of solutions within a sprint cadence. Each team member is aligned to a single Capability Aligned Agile Team. The Software Engineer’s core contribution will be leading software development and engineering tasks, whereas other significant contribution will be including analysis and testing activities. The Software Engineer is also responsible for managing his/her own work, estimating project complexity and size, determining technical design (within architectural guidelines) and contributing to the continuous improvement of the agile team. The team members rely heavily on collaboration and communication and must place great emphasis on Agile Values and Principles in order to achieve a sustainable high performing status.
Developing and building tasks which contribute to the delivery of working software required by the Capability Product Owner and Lead Developer;
Contributing to the analysis and testing of working software required by the Capability Product Owner and Lead Developer;
Ensuring user stories are delivered to the ‘working system’ definition of done within agreed sprint;
Contributing to agile planning, including sizing stories, parsing user stories into tasks etc;
Working with colleagues from other agile teams and shared service teams to both communicate and accept dependencies;
Supporting the Team in readiness for the System Demo;
Participating enthusiastically and effectively in Agile ceremonies;
Ensuring continued improvement through conducting regular retrospective reviews and executing high priority actions that emerge;
Committing to enhancing their skills and gaining experience on non-core specialisms (Analysis, Test);
Supporting other team members to improve their software development skills where it is their non-core specialism;
Collaborating with the Production Support function in the resolution of production issues.
Bachelor’s degree holder graduated from a numerate subject, preferably computer science or similar;
Basic professional qualifications related to the asset management industry (such as IMC) are preferred;
Experience in designing and building API-first applications that integrate with multiple systems and deliver intuitive modern-web user experiences (e.g. AngularJS, ReactJS);
Solid experience in designing and building highly available and modular web applications, preferably public facing (internet);
Well versed with toolkits for effective modern web development (e.g. grunt, gulp, webpack, npm, node, etc.);
Experience in testing frameworks for modern web applications (e.g. Selenium, Karma, mocha, etc.);
Experience in building web applications that perform well in multiple devices, browsers and network conditions;
Experience in mobile native development or ReactNative development is a plus;
Collaborating with UX designers in the implementation of mockups for UI/UX flow and information architecture;
Familiarity with Agile delivery methodologies (SAFe is preferred);
Good understanding of DevOps and the overall SDLC (Continuous integration, continuous deployment, unit testing, etc.);
Good understanding of source control tools and branching/ merging strategies (e.g. Git, TFS, SVN);
Experience in working in a global environment with global colleagues, stakeholders and onsite /client teams, in particular sensitivity to cultural differences, time zones etc;
Excellent command of both written and spoken English;
Excellent technical documentation skills;
Capable of remaining positive when under pressure;
Problem solver, comfortable taking the initiative in challenging and ambiguous circumstances.