Important: Please apply with your CV in English.
Project descriptionThe System focuses on bringing a new level of efficiency, transparency, and openness to the trading process by building a collaborative community of investors, brokers, technology firms, and content providers. Through our modular, end-to-end trade management platform users can execute everything from simple single stock trades to complex strategies across markets and time zones and manage your risk throughout the trade lifecycle. Access our growing network of over 150 execution brokers to route Equities, Futures or Options orders globally, as well as dozens of integrated prime and clearing brokers through our expanding suite of middle office tools. Collaborate with our broker and vendor partners, who can efficiently plug into our platform to reach our community. The system was among the industry's first providers of trading technology and has pushed the state-of-the-art forward for more than 20 years. We're building on our history of innovation to become an open, industry-backed ecosystem for the entire trading community. As a Server-Side Developer on the team, you can find a broad variety of projects focused on low latency, high-speed financial applications written in multiple languages and on various platforms. From C++ to Java, Linux to Windows, back end database to inter-process communication, you should be confident in all tiers and have an ability to learn new skills as we evolve with the changing technology landscape. Successful server-side developers take ownership of the products that we ship, and, as such, are expected to work with Product Management to determine business requirements, come up with high-level designs, evaluate build vs buy options, work with QA in testing, and deliver and maintain the applications in production. We value the ability to think and learn over simply being proficient in a specific language, as this allows for to be agile and adapt as needed. The system connects to Market Data Platform to receive market data of different markets across the globe. It has market data connector application which is built using Java and is a sever side application. Along with this the system also has many market data applications which are on C++. The market data application supports Level 1, Level 2 and Times & Sales information to the system User Interface. Also, the system has reference data application which processes the Data Scope Plus files and updates the symbology in the system. These are built using Java. The system uses RT24 Database to store the static symbology information and the symbology lookup application supports around 4 million RICs. These applications are latency specific.
ResponsibilitiesDevelop high-quality software, design, and functional documentationProvide estimates for specific software feature implementationIdentify, prioritize and execute tasks in the software development life cycleBuild unit tests for your codeDevelop and maintain tools and applications by producing clean, efficient code that follows open sourcing standardsBe involved in production issues fixing in case L2/L3 support teams are not able to fix themAutomate tasks through appropriate tools and scripting
SkillsMust haveTrading domain knowledge (stock market, FIX, trading engines, front office trading, exchanges, market data, etc).Overall IT experience 7+ yearsStrong Java core skillsAble to understand SQL regardless of the database (e.g.. DB2, Sybase, SQL Server)Proficiency with Object-oriented design and design patterns (e.g. Dependency Injection, Strategy, Factory)Familiarity with source control (e.g. Git/GitFlow, SVN)Hands-on experience with Build and Deploy frameworks such as Gradle, Jenkins, Artifactory, Chef, DockerInter-process communication (TCP/IP, UDP/multicast, etc)Testing frameworks (GoogleTest, Junit, Mockito)Proficient in multiple platforms and operating systems (e.g. Windows, Linux)Critical thinking and problem-solving skillsStrong documentation and presentation skills
Nice to haveAgile software development process (daily huddle, sprint planning, retrospectives, etc)Work well in a teamExperience working in a Test-driven developmentC\C++BS/MS in Computer Science/Computer Engineering or equivalent work experience