As a software intern at Celsee Diagnostics, I have worked on many tasks and projects that will help improve the efficiency of the company’s software, as well as the organization itself. I have spent a lot of time working on software and organizing digital files to make everything easier to maintain.
I’d have to say that my favorite project that I’ve completed thus far was helping to set up our Git server. If you don’t know what “Git” is, think of it as a cloud service with version control. You store code and files in repositories, which are stored remotely. Git keeps track of all information in the files–including additions and changes, and even allows you to go back to a previous version (if you accidentally mess something up). It also makes it easier to collaborate on code–you can merge your changes (instead of just completely overwriting a file), which enables multiple people to work individually on different parts of the code. Git is extremely efficient, which makes it a popular choice for companies like: Google, Facebook, Microsoft, and Netflix. Those of you who are still curious can check out this article: https://www.quora.com/What-is-Git-in-laymans-terms
Our lead software developer wanted to move all of our existing repositories from https://github.com to our local server, giving us more control over how it is stored. Since Celsee Diagnostics manufactures medical devices which are used in Europe, there are many regulations governing our processes–one of these states that all software and supporting programs that we use must be verified. Relying on ever-changing third party software can make things more difficult when complying with so many regulations, so the more control we have, the better. Also, we must have a software development plan for the entire life of our software, which includes any changes, upgrades, and migration.
I have used Git before to collaborate on group projects at UM, but never on this scale! For this project, I needed to learn a lot more about Git so I could help create our official software migration plan. After a ton of reading, trial and error, and testing, I was able to successfully migrate everything to our local server. The process of actually moving the code from GitHub to our server wasn’t hard at all (a few simple commands), but since I needed to create an official plan which could be audited, I had to know how and why everything worked.
This was definitely not the easiest project I’ve worked on, but it was a great learning experience–I think that’s the reason I enjoyed it so much.