Trans Plus

About the Company

Trans Plus™ is a transportation logistics software company based in Guelph, Ontario. Their main products are Fleet Manager™ and its little brother Logistics Manager™, which allows users to manage trucks, trailers, item delivery locations and status, payment records, and more. The company also integrates other services in the software for customer convenience and occasionally develops custom features for specific customers. Therefore, it requires a fulltime team to develop new features and fix any issues found in the software.

Test

First Term

Goals

The skills I wished to develop at Trans Plus were, how to take requirement from a user, translate it into a user story, then develop the item asked for by the user. Learn the process of how a work item is made and all the steps it goes through before being scheduled for release. As well as how the SQL tables are populated, interacted with, and maintained in the company's code base. These goals were mainly to gain a better understanding of the company’s development process, so that in future jobs I would have a head start with any similar process and be able to grasp those concepts quicker. I also wished to see how the systems were designed to interact with each other, particularly how the SQL database interacts with the software. This gave me an idea of how those systems were designed and new ways they can be used in an efficient manner. I was able to gain these skills by doing my daily tasks and by asking questions from other members of the team. Due to the smaller size of the company I was also given more opportunity to pursue more of my goals by taking on other projects not expected of me. Particularly user stories, where I was able to gain an idea how the process works for developing larger items. Overall, I completed all of my goals, but I would have liked to develop my SQL skills and knowledge more thoroughly.

Job Description

Due to the smaller size of the team I got a variety of different tasks to work on throughout the term.

Debugging

My main task throughout the term was to fix issues reported in the software. This was done through a ticket system where defects were reported then taken by individual developers to be worked on. Each defect was worked on, had a code review, then went through testing where it was either marked ready for the next release or an issue was found and sent back into development. The defects could be a simple issue which just required a text change or required a new UI to be developed on an existing screen to fix the problem. Overall, it was usually somewhere in-between the two and was either some sort of logic error, graphic error or a mix. Some of the defects also required me to gain more information from the person who originally submitted it to gain clarification on the issue. Occasionally it would come down to a business decision, then at that point I would ask for clarification from my manager. In the end, I got very familiar with C#, .NET framework and Visual studio, comfortable with Microsoft SQL and Visual Basic, and an introduction to Crystal Reports.

User Story

I also had the opportunity to work on my own user story, which was the updating of the message boxes to use the new company style. It had me learn the Model–view–presenter style of UI design and development as well as the steps involved with actual design of the new GUI and its icons. Then I got to learn the review process at the company for larger stories, giving me insight on the process. I also updated my progress in the weekly stand up meetings so other team members knew my progress into the project.

Additional Duties

Another one of my duties was updating the modules of customers so they had the appropriate modules available to them. I also did a similar process when a new client was added. At that point I would have to add a new key and assign them the initial modules they paid for, while also creating new TFS items for each module change. Another duty was generating migration scripts from VB6 to C# for customers transitioning to the latest version of the software.

Second Term

Goals

The skills I whished to develop for my second term at Trans Plus are similar to the goals in my previous term. The first goal I had, was to develop a better understanding of how the servers and databases are managed, and how the SQL scripts used to access and create them worked. My second goal was to Gain a better understanding on how the various API's knitted together with the C# codebase. So, I can gain a better understanding of how the process of API integration worked. Then my final goal was to Learn how to communicate effectively with the team while working remotely using Microsoft teams and email, due to working at home because of the COVID-19 pandemic. The main way I went about developing my goals was to choose defects that were related to my goals. I was able to determine which defects would probably relate to my goals due to my experience last term with the project’s general structure and specific features. Overall, I was able to make significant progress on my goals, with the furthest being related to SQL queries and basic database operation. Though I do still have aspects I can improve in each of my respective goals, I am overall happy with the progress I have made this work term.

Job Description

For my second term my main task was also debugging issues found in the software, using the same ticketing and review process as before. The main difference from my previous term was that all of these processes had to be done remotely, meaning that in person discussions, like scrum stand-ups, were moved to Microsoft teams and e-mail. Overall, the bugs I worked on were generally more complex than my previous work term, with issues in both the C# code and the underlying SQL queries requiring new methods to be created, and generally more complex code architecture for some of the bugs I was working on. Due to the more complex nature of these defects and the adjustment to working from home I didn’t get a chance to work on a user story this term.

One of the notable larger defects was the fixing of the paging system properly sort through an entire dataset when that column was selected. It required the modification of one SQL query and the implementation of a dynamic column sorter through an ADODB interface in C#. Though there were some unavoidable performance issues when sorting through some of the columns resulting in the sorting feature being disabled for them.

Overall, my second term at Trans Plus was similar but also different from my previous term. I certainly became more familiar with the remote work experience in the software development field.

Conclusions

Overall, my experience at Trans Plus™ gave me insight at what working for a smaller development company is like and the steps involved for creating software in a modern setting.