Senior Software Engineer ______

Working within our Software Engineering group you will enhance and support new and existing products. In addition, the Senior Software Engineer will participate in defining technology and process strategy for Calastone IT, including occasionally leading on innovation or software design pieces of work.

Key Responsibilities

  • Develop new features at a high level of quality.
  • Conduct peer reviews of code.
  • Participate in daily Stand-Ups, change analysis sessions, and technical presentations.
  • Provide input as necessary to tool and environment adoption guidance.
  • Continuously develop your business domain knowledge and understanding of the Calastone business.
  • Work closely with tech leads, engineers, testers, and auxiliary personnel.
  • Take ownership of specific initiatives in innovation or technical debt.
  • Design, document and communicate system solutions ensuring a good balance of time, quality, cost and performance
  • Collaborates across the organisation, seeking advice and getting buy-in on proposals and designs.

 

Required Knowledge & Experience

 

Essential

You will need to demonstrate a deep and thorough understanding of:

  • C# at a mature commercial level, and additionally either C# or Angular in a strong commercial setting.
  • Object Orientation, SOA, and related design patterns.
  • Modern software development practices: agile, version control, code reviews, continuous integration
  • Concurrency, asynchrony, and parallelism.
  • Test Driven Development – Unit Testing frameworks, mocking frameworks, and patterns for testability.
  • Relational database concepts, Microsoft SQL Server and SQL.
  • Front-end technologies including HTML, CSS, and JavaScript.
  • Web API
  • The mutual funds industry or related financial experience.

 

Desirable

It would be to your advantage to have some level of experience in one or more of the following:

  • Knowledge of mutual fund trading, settlement, reconciliation, lifecycle management and regulation within the context of the distributor/platform, Transfer Agent (TA), and fund/asset management industry.
  • .NET Core and related open source technologies.
  • SPAs and responsive web development using Angular and Bootstrap.
  • Enterprise messaging systems (e.g NServiceBus/Azure Service Bus/RabbitMQ).
  • Containerisation (using e.g. Docker) and container orchestration (using e.g. Kubernetes).
  • Cloud experience, preferably Azure.
  • Blockchain development experience, ideally Ethereum, but Corda, DA, or others are also of interest.
  • XML, JSON, and related technologies (e.g. schemata and XSLT).

 

Person Specification

You are someone who has a passion for good technology, an attention to detail, and excellent communication skills. We take team dynamics seriously so, like us, you thrive on teamwork. We view ourselves as enablers for the business so you must be able to contextualise your work for less technical members of the organisation. We need your help to modernise the funds industry, bridging the gap between finance and modern technology to create faster and more efficient services for the benefit of the end investor.

 

Optional On-Call Support:

  • The development team provide out-of-hours on-call assistance to the operations team on a rota basis, with a typical frequency per developer of once every 3-4 weeks. You may be invited to join this rota once suitably skilled.