v-Eden
Web Applications Developer
May 2017 – Aug 2017
Introduction
This page contains a summary of my first co-op work term at an Oakville based company called v-Eden where I worked for the summer of 2017 for 4 months.
During this time I was developing components for an internal business application called Titan.
About the Company
v-Eden is a startup company that develops various cloud oriented software solutions. Some of the solutions include building web applications and server/database solutions. v-Eden is a relatively new company with 2 full time developers whose current main client is a sales based company called Quest Mindshare, a survey panelist company that collects data for companies looking to acquire market data relevant to their company's industry. This company has over 100,000 panelists around the world.
Job Information
While at this company I was responsible for building components for a web application called Titan which will serve as a vital utility for the Quest Mindshare team to control and manipulate all sorts of data they acquire from working with clients. The Titan platform is mainly built off of the Angular framework and uses 2 databases to store and access the companies data. During my work term I created many components of the Titan website and wrote many database routes that allow the client side of the application to interact with the data on the server.
Also I was tasked with finding and resolving bugs that the current system had as well as Updating and rewriting older components that have become outdated compared to the latest platform standards. On the front end I was using Typescript for the website logic as well as scss and html to create the visual interface that the user will interact with while using the application. For the server side I was creating database requests using php but quickly switched to using NodeJS for its many advantages. The types of features and bugs that I worked on varied as the platform needed a lot of unique features and since we had a small team, I was responsible for a wide variety of tasks.
Since there are so many interesting software stacks with each having their own benefit, I was required to have the ability to learn new things and adapt to new APIs and Frameworks to succeed in my role. I would say my greatest challenge that I had during my work term was having to read and understand existing code which is something that I had not done before until this summer. This was difficult because it is hard to jump right in to a project that is so large. I found the best strategy to learn from someone else's code and be able to understand it to the point to be able to add and manipulate it was to follow the code and use the rubber duck ideology to simplify the program and make it easier to understand. Also something that helped me greatly was using the same resources that the developers had used to learn the platform themselves which was quite helpful as I developed a similar grasp of how to structure the code in a way that allowed for the entire application to have a uniform code consistency and style.
Goals & Learning
The first goal i created for myself in this role was to become proficient with using Git since it was a very large part of how I would control my code and maintain it in the best way possible. Git is a widely used version control system in this industry and I was excited to have the opportunity to further my skills with this tool. Git is such an important tool because it allows consistency between the platform and ensures a secure and reliable code base through various protocols and standards.
The next goal I set out for myself was to show initiative in my role and go above and beyond when I came across any opportunities. This skill is very important to have because it make the project more interesting and helps you create the best possible final product.
The third goal I set out for myself in this position was to build strong connections and try to network as much as possible when I could because often times, networking can result in opportunities down the road when you might be in between jobs or may be presented with opportunities you didn't even know were possible.
And finally the last goal I set out for myself for this work term was to increase my debugging skills. Debugging can slow down progress greatly in any project and building on this skill will help any programmers overall ability to code. I had many opportunities to further my debugging skills in this position with various bugs I worked on and can confidently say I am a better programmer because of it. I uses great tools such as the chrome dev toolkit, kibana dev tools, and postman to debug issues and test things in the most efficient way.
Conclusions
The most important thing I will take away from this experience is that each and every company will have a different approach to a problem they are trying to solve and the best way to be successful and be able to perform well in that position is to want to learn as much as possible about what the companies task and how you can be able to come up with solutions to problems you have never seen before. It is extremely important to be interested in the platform and ready to learn new things each and every day. The exact tools and languages that the company uses should not make a difference on how the problem is approached. Being open minded and wanting to learn as much as possible will result in a more creative and thoughtful solution. Everyone makes mistakes when learning a new tool but once it has been mastered, it will make the next tool easier and faster to learn. Making you a better developer faster and faster so being open minded and eager to learn will always result in success no matter what you do. I hope you learned something about me and v-Eden and enjoyed reading my thoughts about my first work term.
Acknowledgments
I would like to thank Krista Spielman and Ryan Lawson for putting their confidence in me as their first co-op student and I couldn't have asked for a better first experience in the industry. I enjoyed each and every task and have come out a much better developer in the short time I worked there. I learned a lot from both of them, each having unique strong skills in various areas of development and will be forever grateful for the knowledge I have acquired in the 4 months I worked with them. I would also like to thank the people of the Quest Mindshare Research group for making me feel like a welcomed member to the team.