Backend Software Engineer, C#, Sockets, Messaging, Trading (197180)

Company: Starpoint
Location: Charlotte, North Carolina, United States
Type: Full-time
Posted: 23.JUN.2018


Job Description Looking for a Software Engineer to join the team! This individual will be responsible for designing and developing our dist...


Job Description

Looking for a Software Engineer to join the team! This individual will be responsible for designing and developing our distributed-systems products and platforms, which power leading digital currency trading venues and permissioned blockchain solutions. Our software is built using C#, using custom messaging mechanisms over multiple transport protocols, with customized persistence and storage mechanisms, all optimized for high-volume enterprise-class real-time access-controlled transaction processing. In this position, you will work in every layer of the service tier (transports, messaging, framework, data persistence, business logic, ...) and develop a rich understanding of both the system mechanisms and the application business domains.

Job Responsibilities:

As a key member of the software development and delivery team, you will:

  • Be part of a multi-disciplinary engineering team focused on delivering world-class industrial-strength distributed-systems software.
  • Work with other developers, test engineers, analysts, and project managers to develop and deliver software products and solution implementations.
  • Contribute to the evolution and enhancement of both our trading venue and blockchain platform product lines.
  • Participate in solution development/delivery, using our products and platforms.
  • Leverage Agile practices to incrementally and iteratively deliver high value.
  • Analyze, design, code, and test software elements, with an eye for building functional, performant, scalable, solid production software in a timely manner
  • Prepare technical documentation and diagrams.
  • Cultivate expertise in relevant aspects of target business domains and apply that knowledge to maximize technology value.
  • Assist project and product leaders in making risk-managed planning and release decisions.


  • Proficiency in one or more OO languages (C#/.NET strongly preferred).
  • Familiarity with distributed systems patterns and techniques (SOA preferred).
  • Understanding of multithreading and concurrency.
  • Experience with sockets, WebSockets, and/or message oriented middleware.
  • Experience with serialization techniques like JSON, binary, or protobufs.
  • Experience building, troubleshooting, and debugging distributed systems.
  • Knowledge of code profiling, optimization, analysis tools.
  • Familiarity with BDD/TDD and automated testing.
  • Commitment to lean programming style and aversion to bloatware.
  • Creative problem solver able to consider and propose multiple alternatives, taking into account technical and non-technical trade-offs and side effects.
  • Some experience with trading or post-trading systems, payment systems, or financial processing systems is preferred.
  • Knowledge of Bitcoin, cryptocurrencies, and/or blockchain technologies is desirable.
  • 3-5 years of experience building distributed, transactional software solutions.

Apply Now


Free eBook

Loader2 Processing ...