INTERNSHIP BAC+4 – DEV JAVA – Out with the old, in with the bold: upgrading to next gen apis

Posted:
10/9/2024, 12:05:28 AM

Location(s):
Ile-de-France, France ⋅ Paris, Ile-de-France, France

Experience Level(s):
Internship

Field(s):
Software Engineering

Murex is a global fintech leader in trading, risk management and processing solutions for capital markets.

Operating from our 19 offices, 3 000 Murexians from over 60 different nationalities ensure the development, implementation and support of our platform which is used by banks, asset managers, corporations and utilities, across the world.

Join Murex and work on the challenges of an industry at the forefront of innovation and thrive in a people-centric environment.

You’ll be part of one global team where you can learn fast and stay true to yourself.

Description of the team/department:

The Reference Data Management team is in charge of developing and handling the evolutions of internal services providing various data objects to different other services and business solutions of the MX.3 platform. The development team is composed of 2 C++ developers and 5 java developers (2 of them located in Beirut).

During the internship, the intern will be part of the team and integrated in the agile methodology. He/she will share his/her progress on a daily basis with the team and interact with other team members to learn and get information.

Missions:

The objects managed by the Reference Data Management team are distributed across the MX.3 platform in various ways. In the past, a first generation of APIs were developed for Java code:

  • to retrieve the object directly from the database
  • to retrieve specific objects from a C++ backend.

Nowadays, a dedicated rest service was developed in Java. It is the preferred way to distribute some of the data objects. The “old” java API retrieving data from the database should be replaced everywhere in the code line by the java client already developed to retrieve the objects from the dedicated service.

The Java API described above retrieving objects from a C++ backend had several limitations and should also be replaced by a new Java client already developed.

During the analysis of the replacements to perform, the intern might observe that some adaptations are required on the new generation APIs to keep on handling old use-cases covered by old generation APIs. He/she will have the opportunity to implement these adaptations, following the standard delivery process as any other developer of the team.

This internship is also an opportunity for the Reference Data Management team to get a clear picture of the various contexts in which its objects are used.

If the intern identifies a need for it, he/she will have the possibility to put in place automated scripts or tools to identify/perform/verify the replacement work.

Profile:

Student in 2nd year of an Engineering/Computer Science degree.

« Mandatory » skills:

  • Good knowledge and coding experience on Object Oriented Programming (especially Java)
  • Interest in software engineering challenges (“clean code”, resilience, operability, continuous integration, optimization, etc.)
  • Autonomy, curiosity, and capacity for innovation
  • Good understanding and speaking of English or French
  • Ability to communicate and coordinate with other teams

« Nice to have » skills:

  • Experience of Linux OS and shell scripting
  • Knowledge of SQL language (in Oracle, Sybase, Postgres, MSQL context)

Duration:   3-4 months