Our client, a leading financial services company is hiring for a Java Developer on a long term contract basis.
The candidate will work as a member of development team responsible for project delivery in performance and benchmarks space in client reporting in WM Technology. This platform computes performance on a given set of investments, and provides rich reporting capabilities to the end users. It supports over 300 different types of calculations, including time weighed returns, internal rate of return, beta, sharpe ratio, performance attribution, long/short analysis and much more. In addition, this platform provides online calculations on performance benchmarks and advanced blending capabilities for client portfolios. This is a real-time platform that requires fast calculations, efficient memory management and a highly scalable architecture. The backend is written primarily in Java, using DB2 as database and MemCached for distributed caching. This role provides an exciting opportunity for motivated individuals in application development.
* Over 6 years of experience primarily with designing and building large-scale distributed systems.
* Excellent programming skills in Advanced Java with hands-on experience Java/JEE , Spring, ORM / Hibernate, Web services – RESTful, Webserver (Apache Tomcat preferred)
* Excellent Core Java, Spring and Hibernate programming skills
* Work experience primarily with building enterprise server-side applications using J2EE Technologies
* Experience in database administration, advanced SQL, stored procedures and performance tuning.
* Experience in concurrent system design.
* Experience in distributed caching solutions.
* Experience in JUnit, JProfiler/JProbe or any other profiling tool.
* Self-motivated and flexible, with an ability to work both independently as well as part of a team.
* Excellent analytical, troubleshooting and problem solving skills, with out-of-the-box thinking.
* Excellent verbal and written communication skills with ability to explain ideas very clearly.
* BS/MS degree in Computer Science or equivalent.
* Experience developing applications in Python, Scala and Apache Spark.
* Experience in building applications in cloud ecosystem, preferably Microsoft Azure.
* Understanding of portfolio analytics, performance and risk.
* Background in financial technology and data.