As an experienced Software Engineer, your mission is to help guide our global team of technologists toward creating next-level solutions that improve the way our business is run. Assist teams to the appropriate technical solution, apply software development skills to problems to resolve performance issues; advise and develop solutions to maintain and enhance performance with in new and existing projects. An understanding of the importance of end-to-end software development-such as Agile frameworks will be key.
Work with a global team of highly motivated platform engineers and software developers
Execute the full software product lifecycle: analysis, technical design, development, testing, release, support
Contribute to, and eventually lead, software engineering and re-engineering projects
Collaborate with engineers from other platform teams to design and implement new features
Work directly with various senior stakeholder across our Technology Division and their Business sponsors.
Familiarity with one or many spaces within Financial Organizations
Order Management, Electronic Trading and Client Connectivity Systems
Pricing, Risk and Booking Systems
Engage in production troubleshooting
Bachelor's degree or relevant work experience in Computer Science, Mathematics, Electrical Engineering or related technical discipline.
8+ years of experience developing software in a professional environment (preferably financial services but not required)
5 years of hands on Data Driven Enterprise Application development, preferable in financial industry
Strong understanding of Enterprise architecture patterns, Object Oriented & Service Oriented principles, design patterns, industry best practices
Foundational knowledge of data structures, algorithms, and designing for performance.
Proficiency in programming in Java, C# or Python and willingness to learn and adopt new languages as necessary
Experience in database technology like MSSQL and one of key value and document databases like MongoDb, Dynamo Db, Casandra.
Exposure to containers, microservices, distributed systems architecture, orchestrators and cloud computing.
Comfortable with core programming concepts and techniques (e.g. concurrency, memory management)
Enjoys working with algorithms and data structures (e.g. trees, hash maps, queues)
Data Analytics and Data Science experience will be a plus.
Good sense of user interaction and usability design to provide an intuitive, seamless end user experience.
Excellent communications skills and the ability to work with subject matter expert to extract critical business concepts.
Ability to work and potentially lead in an Agile methodology environment.
Physical requirements/Working conditions:
Climate controlled office environment
Minimal physical requirements other than occasional light lifting of boxed materials Dynamic, time-sensitive, trade room environment
Travel as needed
We encourage applicants of all ages and experience, as we do not discriminate on the basis of the applicant's age.