Having a hard time?

  • Complex system?
  • Development getting slower?
  • Quality problem?
  • Performances not meeting the expectations?

Your partner in the difficulties!

Nicolas Raynaud
Independent Consultant
Specialized in Java
On quotation or by the time
+33 6 71 43 43 15

Complex developments

Training teams in some programming fields for complex problems (dynamic programming, graph transformations, comparing complexities ...) Moving a computation from the desktop to the "Cloud".
Some past experiences: computing the shortest path in a failure tree, model based test generation, real-time video segmentation.

Training in compiler construction, design and handling of languages.
Some past experiences: GDS files handling library,  B and OCL.

Training in software engineering, object-oriented development, testability, emerging architecture, light process.

Large scale refactoring

Slicing of a project in various modules, interfaces definition, uncoupling, training of the team to those technics. Code size reduction. Introduction to the tools of lean developments.
Some past experiences; dividing by 5 the code size of an application, slicing of a monolithic application in 36 modules with inverted dependencies.

Code performance

Detection and suppression of code bottlenecks. System performance audit. Training in profiler use, memory management, virtual machines inner working.
Some problems found in the past: 
  • sleep() synchronized threads. The total tests execution time went from 86 to 6 minutes after use or classic synchronization,
  • BufferedReader.readLine() on a 110Mo long line. The line was kept in memory for a long time.
  • Memory "leaks" caused by objects in static collections.