Software Engineer - C#
Role details
Job location
Tech stack
Job description
The Global Analytics team builds and maintains mission-critical systems for price discovery, order management, and trade capture-tools that empower the front office to operate efficiently and effectively across global markets.
As a C# Software Engineer, you will join a high-performing team delivering innovative, business-critical software solutions to front-office users. Your work will span desktop applications, web-based platforms, and API services, deployed both on-premises and in the cloud. You'll play a key role in designing scalable, high-performance systems that support real-time trading and analytics, ensuring reliability and speed in a fast-paced environment.
Role & Responsibilities:
- Design, develop, test, and maintain high-performance, mission-critical software with a strong engineering mindset and focus on quality.
- Collaborate closely with broking staff, product managers, and QA engineers to translate complex business requirements into robust, scalable software solutions.
- Provide accurate time estimates and delivery schedules aligned with business expectations, proactively communicating risks or impediments to ensure transparency.
- Take shared ownership of supporting both existing and newly developed systems, ensuring reliability and rapid issue resolution.
- Document systems thoroughly, including new features and legacy components, to enhance maintainability, troubleshooting, and knowledge sharing across the team.
Requirements
- Hands-on experience in C# software engineering using both .NET Framework and .NET Core, including ASP.NET Web API, WCF, and WPF.
- Strong proficiency in Object-Oriented Programming, design patterns, dependency injection, and SOLID principles.
- Proven expertise in API design (REST and GraphQL).
- Solid experience building multi-threaded and asynchronous systems.
- Skilled in unit testing frameworks such as NUnit, Moq, and Fluent Assertions, with a strong focus on test-driven development and writing clean, maintainable code.
- Experience in relational database design and development (MS SQL Server and Oracle).
- Strong understanding of data structures, algorithms, and software design principles.
- Excellent written and verbal communication skills, including the ability to produce clear technical documentation.
- Demonstrated ability to work across the full SDLC-from design and development through QA, deployment, and post-release support.
- A proactive team player who actively participates in code reviews and production support.
- Highly organized with exceptional attention to detail, able to work independently on complex problem-solving and investigations.
Desired
- Experience in financial services, ideally with exposure to fixed income, options, or swaps.
- Familiarity with AWS services such as EKS, CDK, DynamoDB, S3, and OpenSearch.
- Proficiency in Git and GitLab CI/CD for version control and automated deployments.
- Experience developing distributed microservices and working with Solace messaging.