Life is determined by growth. If you are not growing you are dying.

After almost 7 months in the desktop team, i was given the opportunity to integrate the core developer team, who developed the SOAP & REST APIs in CSharp for the Alpha Platform (Yes, it was no more and app but a platform of different apps.)

With whom did I learn ?

Working in a fresh young team of 3 devs, doing mostly pair programming at the begining, who were as experienced as me and having a manager (the guy sending us mails and organising meetings every monday 😫) was a pretty good experience.

What did I learn ?

Microsoft Website development technologie ASMX, had become my best friend.

We abstracted most of the code to libraries for us not to depend on ASMX architecture such that future migration would be made easy. (Abstarction is key of software dev)

The principal objectif of this api (which was still in a monolithique architecture) was to design a personalised ORM framework, completely dependency free, and managing access rights to the core banking resources and datas.

For this to be done corretly, we tried our best to respect the SOLID design principles and implemented Clean code rules. No excuses here. This code had to be clean and understandable.

The most exciting period of the development of this framework was during the injection of parralel programming into the linq expression query handlers, asynchronous programing patterns and the implementation of design patterns such as object pool, abstract factory, decorator, etc

On what project did I work ?

Migrating such a huge SOAP API to a REST API without breaking legacy code was a huge work which was not necessary at that moment. So we instead decided to continue working with ASMX for the core api functionnalities necessary for the core banking app to function, and we built api’s as facade for the other apps of the platform.

A lot of utility stuffs i used for developing desktop apps and this api can be found on my github.