My OpenMRS Fellowship Journey: Piumal Rathnayake

Hi all, As my fellowship comes to an end, in this post, I’ll share a summary of what I did throughout the past 7 months. I started my fellowship as a QA engineering fellow in February 2023. Since then, I have primarily focused on improving the overall product quality of OpenMRS and enhancing the OpenMRS developer experience.

Here are some of the tasks I completed during my fellowship:

  • Created the marking rubric for rating GSoC contributor applications.
  • Proposed a unit and integration test strategy for O3 and initiated a Google Summer of Code (GSoC) project based on that.
  • Presented in the OpenMRS virtual mini-community meeting.
  • Reviewed GSoC applications for the two QA-related projects.
  • Mentored in two GSoC projects (one as the primary mentor and one as the secondary).
  • Conducted research on test management tools (Xray and Zephyr).
  • Added automated WebDriver management to the QA Framework.
  • Updated O3 documentation with E2E test-related documentation.
  • Reduced the time taken for E2E tests by more than 75% (with pre-filled Docker images for the backend and database).
  • Reduced the resource consumption of E2E tests by more than 80% (with lightweight dynamic frontend Docker images).
  • Delivered a lightning talk at the OpenMRS '23 conference.
  • Improved 3.x end-to-end (E2E) test coverage by writing tests.
  • Addressed various bugs and test failures in the QA framework.

Top achievements:

  • Optimized the automated E2E testing process:
    • Reduced test execution time by over 75%.
    • Minimized test execution resource consumption by more than 80%.
  • Led squad calls and provided mentorship to community members.
  • Mentored two projects in GSoC (one as the primary mentor and the other as a backup mentor).
  • Resolved numerous critical bugs and issues in the testing procedures.

Contributions:

Code contributions:

  • 20+ Pull Requests in 8 Repositories:
    • Patient management - 5 PRs
    • Patient chart - 2 PRs
    • Admin tools - 5 PRs
    • Core - 1 PR
    • Form builder - 2 PRs
    • Cohort builder - 1 PR
    • QA framework - 5 PRs
    • Distro Ref App - 1 PR
  • 1 Bamboo plan improvement

Talk Threads (6+ topics | 50+ posts):

Demos and presentations:

Next steps:

  • Continue refining the automated testing processes for further optimization.
  • Enhance the manual testing procedure by incorporating test management tools.
  • Keep creating and reviewing tests for O3.
  • Explore additional domains, including frontend development and DevOps, to broaden expertise.

Final Reflection:

I really enjoyed mentoring, contributing, and collaborating with the OpenMRS community, especially during GSoC 2023. The experience of leading squad calls, delivering demos in squad meetings, participating in mini-community meetings, and presenting lightning talks at the OpenMRS conference was truly fulfilling. I am immensely grateful for the invaluable opportunities that have allowed me to grow both personally and professionally.

I would like to express my gratitude to the OpenMRS community for giving me this incredible opportunity, especially my mentor, @jayasanka , and the fellowship program administration. I am thankful for their guidance throughout the program.

Here is a short video reflecting on my final thoughts:

Slide deck:

4 Likes