From Problem to Solution: Tackling a Tough Backend Issue

From Problem to Solution: Tackling a Tough Backend Issue

It all started on a very cold🥶 Monday morning, My professor(supervisor) came to the Laboratory and announced "Hey y'all, I am a .NET man".😳

I am an undergraduate student researcher at Applied Artificial Intelligence and Robotics Research Lab where I work as Robotics Software Developer. I am currently working on a rehabilitation robot named PULSR (platform for upper limb stroke rehabilitation) robot which aim to rehabilitate patients with upper limb stroke by helping them to regain/recover their motor functions, even though it is the 3rd generation.😉

The second generation was built using python, both frontend and backend. With the new direction from the captain of the ship, every developer had to start checking C# documentation. I was tasked with the project to create PULSR3 using .NET because I was familiar with the ecosystem.

I was excited with the new task as it is an opportunity to learn more and improve my skills. I design the frontend in less that 48 hours utilizing WinForm and my boss was happy.😂

It is time for the backend then I realize this is not a joke as this is a bit tasking/challenging part because of different motors, sensors, actuators and microcontrollers we need to put into consideration. The whole system consist of the Pc(frontend), control box and the robot itself.

This is a big task😬.....How do we go about it...?🤔 I broke the task down into chunks of small measurable and deliverable units. Which I started with grouping the motors, actuators and sensors to each microcontroller and moved on to writing API for the robot, we have to be able to send commands to the robot. I wrote the API in C# with precise unit testing and documentation.

Once I wrote the API, the problem is 50% done💪🏼. I moved into writing the logic and handling exceptions. I went on to binding events and tested for any exceptions.

You think it is done...? 😂 We have the database management. You would want to take readings that are needed to evaluate the patients recovery rate and for feedback on the software/product. I leveraged LINQ to get it done and i have the full package. We did a lot of in-testing and clinical trials.

All of these is what made me to join the HNG Internship https://hng.tech/internship with the choice of Backend track. This internship will help me to improve my skills and team-communication skills also which is a crucial in the lifestyle of a developer. https://hng.tech/premium, I am on the path of a .NET man😂, What about you....?😂