EMS

Pharmacy Industry

EMS Pharmacy is the largest domestic pharmaceutical company in Brazil and a significant player in Latin America, operating across various divisions including generics, “similares,” branded medicines, hospital supplies, and OTC drugs, with a growing global presence and increasing focus on innovative treatments, as evidenced by their recent entry into the GLP-1 market; while specific current revenue figures fluctuate, EMS has demonstrated substantial growth, reporting approximately US$1.9 billion in revenue for the past year and aiming for a 17% market share through a potential merger with Hypera; the Brazilian pharmaceutical market is competitive with both domestic and multinational companies like Bayer, with EMS leveraging its strong position in generics and expanding into innovative areas to compete, although direct market share comparisons between the two across all segments are not readily available.

  • Led the front-end strategy and execution for the sample distribution squad, directly addressing a critical need for client-facing application development.
  • Spearheaded the initiative to build the sample distribution system from the ground up, taking ownership of the front-end architecture and technology stack.
  • Architected and developed core front-end components leveraging React, Redux, and Saga to efficiently consume service data and power key sample control screens, including the Dashboard, POS, Simplified Distribution, and Managers interfaces, along with defining various sample delivery workflows.
  • Drove the definition and implementation of RESTful API endpoints in Laravel, ensuring seamless data delivery to the ReactJS front-end via Redux and Saga.
  • Established front-end best practices and standards within the team, setting the foundation for a scalable and maintainable application.
  • Took ownership of the initial project setup and configuration for the React front-end, including tooling, dependencies, and project structure.
  • Mentored and guided the team in adopting React, Redux, and Saga, fostering front-end development capabilities within the existing programming staff.

Sample distribuition system

Having been brought on board to address a critical need for front-end expertise within a team of three programmers who lacked experience in this domain, I spearheaded the development of a new React project from its inception. Utilizing React, Redux, and Saga, I laid the foundational architecture and played a vital role in defining essential front-end libraries, including those for input masking and field validation. Subsequently, I took ownership of crafting the user interface, ensuring a modern and intuitive design. A key responsibility involved building the UI specifically for doctors to manage and assign quantities of medicine. Ultimately, my role extended to integrating the front-end application with the backend SAP interface, ensuring seamless data flow and functionality.

Technologies used:

PHP / Laravel / Javascript / React / Redux / Saga 

SQL / MySQL

RestFul APIs

ClientEMS
Date01 Jul 2019

Result Driven

React expertise

HAVE A LOOK AT OUR EMPLOYEE TESTIMONIAL

Situation:
The team was encountering challenges with data input formats, primarily due to a lack of React JS expertise. Incorrect data entry was leading to data integrity issues.

Task:
I was assigned the task of developing and designing reusable React components with robust validation capabilities to ensure accurate data input. This involved creating components for various data types, such as dates, monetary values, and integers.

Action:
I began by thoroughly analyzing the data format requirements and potential validation scenarios. I then proceeded to develop a suite of reusable React components, each tailored to a specific data type. These components incorporated robust validation logic to prevent invalid input, such as incorrect date formats or non-numeric values for monetary fields. I also implemented clear error messages to guide users in correcting their input.

Result:
By successfully implementing these validated components, we effectively resolved the data format issues. Users were now guided to input data in the correct format, and the system accurately captured and stored valid data. This significantly improved data quality and reduced the need for manual data correction, ultimately saving time and resources.

Code design problem

HAVE A LOOK AT OUR EMPLOYEE TESTIMONIAL

During my time working in the web development team at EMS Pharmacy Industry, we encountered an issue where most of the developers were not familiar with using design patterns, leading to excessive effort being put into developing even simple functions for the system. Given our tight project timeline, we knew we needed a solution.

I brought up the issue with the IT manager and suggested implementing design patterns to improve our development process. We decided to create a library using the strategy design pattern, which would be responsible for validating information inputted by end-users.

Using this library, we were able to develop a plethora of functions at a rapid pace, resulting in the project being completed on time and with great success. We were able to thoroughly validate all inputs of the system, greatly improving its functionality.

Validation fields

HAVE A LOOK AT OUR EMPLOYEE TESTIMONIAL

The team was encountering challenges with data input formats, primarily due to a lack of React JS expertise. Incorrect data entry was leading to data integrity issues.

I was assigned the task of developing and designing reusable React components with robust validation capabilities to ensure accurate data input. This involved creating components for various data types, such as dates, monetary values, and integers.

I began by thoroughly analyzing the data format requirements and potential validation scenarios. I then proceeded to develop a suite of reusable React components, each tailored to a specific data type. These components incorporated robust validation logic to prevent invalid input, such as incorrect date formats or non-numeric values for monetary fields. I also implemented clear error messages to guide users in correcting their input.

By successfully implementing these validated components, we effectively resolved the data format issues. Users were now guided to input data in the correct format, and the system accurately captured and stored valid data. This significantly improved data quality and reduced the need for manual data correction, ultimately saving time and resources.