Define the architecture, design, development, code review, pairing, testing, and maintenance of applications.
Design and implement scalable applications and services with a solid focus on quality, continuous integration, and deployment.
Write testable code following clean coding and SOLID design principles, instilling best engineering practices across the wider firm.
Perform code reviews and contribute to the overall quality, maintainability, and testability of software developed.
Adapt to changes in priorities and requirements.
Work closely with clients and stakeholders to define feature requirements and deliver a product that materially impacts the business and improves the end-user experience.
Collaborate with teams to form a good working culture and continuously adapt to different working environments.
Key Skills and Experience
At-least 10 years of software development experience.
Strong knowledge of JVM languages (Java / Kotlin / Scala) and RESTful web services, including data interchange formats such as XML, JSON, Avro.
Familiarity with different persistent storage technologies involving both SQL and NoSQL.
Experience working with Git source code management.
Good understanding of clean coding and SOLID principles.
Proficiency in code quality measurements using tools like Sonar.
A team player comfortable working in a team that deals with ambiguity and problem-solving.
Ability and willingness to mentor junior team members.
Beneficial Skills and Experience
University degree or equivalent experience preferred; Master’s degree preferred.
Knowledge of Equity Derivatives products & product lifecycle.
Experience with UI frameworks such as React or Angular.
Experience with OpenShift / Kubernetes or other cloud platforms.
Experience working within an Agile (XP) environment.
Experience with streaming technologies (Akka/Pekko/Flink).