Architect for Information Technologies

  • Performing technical audits
  • Consulting in software architecture and design
  • Investigating and providing solutions for Scalability problems
  • Helping in the evolution of development methods

Steps in software scalability

In the life of a company and the sofware it creates, there are steps to pass to continue to grow. In the case of a website, for instance, to allow the traffic to grow, it will be necessary to redesign the technical infrastructure and the architecture of the application system. For others, it will be necessary to add more and more functions and to manage a software application becoming more and more complex. It can be also a case of changing the development methods in order to adequatly answer to a growing number of client requests.

Passing those steps to go to more and more growth can be difficult to manage internally because it often requires to take a step back and to question the design of a software that we know in depth, or to question methods of work that we adapted to and that we are used to. The difficulty can be also in a lack of competences or experience on the topics to deal with, making harder to find solutions for the problems we are facing.

In those different cases, asking an external expert, with recognized experience and skills, allows the internal actors to be released from the pressure of day to day work and to see the situation from a global point of view, in order to find the best solutions.

Experience and skills

Rémy Amouroux created Teorem to answer to those needs.

As the founder (in the technical and technology field) of Kelkoo, he has the experience of that daily pressure, of this need to create and to offer to the clients, as fast as possible, applications with always more functions and features. That pressure forces you to make pragmatic choices in design, in security and in performance to reach a good balance between quality and times to release to production. Following Kelkoo evolution, he had to question his own design choices to answer to the growth of the user base of the Kelkoo websites in Europe, but also the growth of the business and its impact on internal tools.

He refined that experience, after the acquisition of Kelkoo by Yahoo!, by becoming the Europe Chief Architect in the International Engineering organization within Yahoo. This job allowed him to learn supplementary skills in terms of agile development methods, and to manage the technologies required by Internet applications with huge audience. With his skills and experience, he supported the teams developing those applications, building the auditing and supporting methods ensuring that developers were taking the right design choices, while making sure that people were adopting his directives.

With his experience and his technical skills, Rémy Amouroux can provide you with this external point of view that will allow to cross those growth limits in the evolution of development teams and the software they create.

Our services

Teorem can help you during several phases of the evolution of your projects.

Technical Audit: at any moment, it is possible to realize an audit of the software components of a product or about the work methods of a development team. The goal of the audit is to put light on potential technical risks, with regards to middle- or long-term objectives of a change strategy. The results of the audit will also include recommendations allowing to suppress, or at least to attenuate, the impact of those risks on the objectives.

Software Architecture and Design: during the realization studies and design phases, we can support your reflexions and put our experience at work to allow you to make the best technology choices and the design choices for your applications. Naturally, this is applicable for all kinds of Internet applications, but also for your internal tools and databases.

Investigation of scalability problems: it is often difficult to take a step back when an application presently running in production begins to show slowdowns, or even important performance deterioration leading to a complete stop of the services. Our experience of those kinds of crisis allows us to help you to quickly analyze the reasons of those problems, to find solutions to alleviate the impact for the short-term and to solve in a scalable way for the long-term.

Evolution of development methods: to be faster in your software developments, while ensuring a better quality of the products, we can advise you in the choice of the tools best fitting your needs and in the introduction in your environment of agile methods of development and project management.

For more informations, please contact us.