Logo

Introduction:

My name is Ori Talmor and I am a third-year student at the University of Guelph. Not long ago, I completed an 8 month-long term at NCR in Waterloo, Ontario. This blog will analyze the goals I set for myself and the steps I took to reach them. This blog will dive into my role as an intern at NCR and the skills I learned while working there.


Employer Information:

NCR Corporation, originally known as the National Cash Register, is an organization that deals with financial transaction software such as self-service kiosks, point-of-sale terminals, teller machines, and check processing. Founded in 1884, NCR began as an innovator in the world of small businesses helping to reinvent the cash register and produce a need for business responsibility in the form of receipts. The office I was located at, NCR Waterloo, was concentrated on new software solutions for Omni-Channel Commerce. This software which is highlighted in the below video allows online shoppers to transact on multiple devices at once (i.e. A customer can start a transaction on their phone and a teller can finish it off for them in the bank).

Goals


Work Term 1: Summer

My goals for this work term were primarily focused on my problem-solving skills as well as my coding skills in terms of Microservices architecture. These skills were a daily necessity during my work term and helped me become a better intern and a more involved employee. By working on my oral communication skills, I could learn a lot just by listening to my coworkers and using this knowledge to better triage and debug problems on my own. Although I was unable to complete one of my goals which was to network and be active in my work environment. I noticed, too late unfortunately, that I spent all my time with my team and never went out of my comfort zone to speak with other employees from different teams. In the future, I plan to take lunches instead of working from my desk as to give myself the opportunity to mingle with other employees that are not necessarily on my team.

Work Term 2: Fall

During this work term I reflected on what goals I had managed to achieve, what I wanted to work on this term, and what I still needed to work on from my previous term. I wrote about how I fell short on networking and talking to other teams; in this term I made sure to eat lunch with other coops to get to know other students from different schools, to speak more often to people from different teams by doing things like going out for lunches, and to take time to converse with many different people across the office. In terms of my goals for this term, I especially wanted to work on pace when it came to my performance. I tend to work really fast and so I set a goal to not necessarily work slower, but to take the time to understand what it is I'm doing and to work effectively. This goal paired with my independent problem solving goal and my technological literacy goal of tackling more Java development stories helped me start to develop some of my independence in the workplace and my confidence in my coding skills. I noticed that in school there is a lot of handholding and collaborative work whilst at work, although there is collaboration, it is expected that independent work is the intention with most of the collaboration being done in the agile design stages. I set goals for myself to work more on my Spring Boot and Java ideologies through my work on the project's microservices. In terms of my pace I set my goal to be more fine-grained in my programming and to analyze the architecture and how the story I was working on functioned. I managed to meet both these goals by taking on more development stories and being curious about what I was implementing and how it worked. These tasks and goals that I met will help me in my next term to tackle on challenging projects and integrate to new companies more smoothly - they will increase my attention to important details and help me utilize valuable problem-solving skills in new environments. One goal I would still like to work on in my next term is one that I think I partially met, my pace. Even though I am looking more in depth into what I was doing, I found that at times I was committing code that wasn't my best: that I was cutting corners in order to finish stories and get new ones in order to "learn more" instead of taking the time to reflect on my work and ask myself if I could do it better before committing. In my next term I think this will be my biggest hurdle to jump.

Job Description

During my 8 month-long term, I was a Software Development Intern tasked with developing solutions to requirements given to us by clients looking to license a new flagship software solution that released during my term. My tasks would range anywhere from testing and bug fixing, updating/improving functionality to meet a specific requirement all the way to implementing security measures to thwart possible log injection and HTML escape sequences. When I began working in May 2018, all the skills I needed were taught on the job. It took me almost 2 months to feel capable in the workplace, but once I felt like I understood what was going on, I felt right at home. From the start I was given tasks with high importance to the team, including adding functionality to microservices and adding handlers to ElasticSearch. I had the amazing opportunity to demo my additions to the project to the entire software development team multiple times throughtout my term which helped me develop my communication skills in the workplace. The most important skills needed for this job I believe are open-mindedness, flexibility, and a positive attitude. By having these three I think anyone can succeed. Throughout my term, I believe I came to a realization that as with most things - programming good code and learning proper standards comes with practice. In school I have been faced with churning out projects, assignments, and code as quickly as possible so my style and standards were shy of what they needed to be to satisfy a core principle of the development process at NCR. As a result, I learned very quickly that school wouldn't be able to prepare me for this, I had to take my own initiative to practice good programming habits on the job. Being open to new ideas and suggestions was super important as things don't often go as planned meaning having a positive attitude is super important and helpful for taking things into perspective and lowering stress at work.

Conclusion

I learned so much from this work term, but I think the most significant piece is what I learned about myself and what I want to do. I learned that as much as I loved NCR, the company culture, and the people there; I felt like the workplace isn’t for me. I had a realization that maybe I want to go into academia and pursue a different route. Although, I did notice that what I did at NCR was not in any way related to my original field of interest, Cyber Security, it was still a good indication of what I should look for in the future. Nevertheless, the skills I learned in this term I will carry forward and it will certainly prove to be helpful in making me a better person as well as a better applicant for future employment.

Acknowledgements

I would like to thank Dima Abu-Alhaija, Callum Butterworth, Yuktika Pahwa, Vladan Marcic, and Qiu Zhuohui for giving me the opportunity to work with them and for always pushing me to think critically and be more diligent in my work. Thank you for putting up with all my questions and for being very friendly, welcoming and happy to help.