Fall 2020 Work Term

NCR

Software Developer

During my second co-op work term that took place in Fall of 2020. I worked as Software Developer remotely from home at NCR. During my time at NCR I was mainly on the Performance Testing team, aka Pathfinders, Working on main things from quality assurance goals as well as development activities. This Page will be a reflection of my work term and my experience working for NCR.
NCR was originally founded in Dayton, Ohio under the name National Cash Register in 1884. NCR originally manufactured and sold the first mechanical cash registrar, and is now known for their software and hardware they create for the enterprise space. Creating many technologies including self-service kiosks, automated teller machines, and check processing systems and many more. NCR now has 34,000 employees in 160 counties and operate in 141 counties. working with many major banks, Retail, and restaurants.
During my work I believe that I was able to reach all of my goals with each aspect of my job helping me towards reaching all of them. I was able to learn about all the different types of deployment technologies thought the work, learning now to deploy them and configure each technology. There will always be more to learn about each of these technology but I feel a lot more comfortable working with them after this work term. I also have become more confident in sizing JIRA stories, due to past experiences working within the company, and also participating in my companies PI planing which looks at creating and sizing all the stories for the next few months. My last goal looked at writing better documentation and even though there might be some work left on this I feel more confident in my documentation after the work I did this semester where documentation was necessary. Completing each of these goals will help me in my future work terms by caring over all the information I learned from each on and applying it to whatever my next job is.
Goal 1
  • Learning Goal
    CRITICAL & CREATIVE THINKING - Inquiry & Analysis
  • Goal
    Learn some new deployment technologies that are used on the job. for exampl kubernetes, with helm. Oracle and microsoft sql databases, WAS.
  • Action Plan
    Work with them during the work team trying to pay attention to the set up and different properties that can be configured for each techonology
  • Measure of Success
    When I am comfortable to deploy and configure these techonoliges on my own without the help of setup scripts
  • Reflection
    After this work term, I am able to say that I feel more comfortable working with the different web technologies that I work with (WAS, Kubernetes), as well as the databases working mostly with Oracle but got some hands-on experience with Microsoft SQL as well. I believe after this work term I would be able to set up and deploy many of these technologies if I was given some documentation to follow, so I believe this goal was completed
Goal 2
  • Learning Goal
    LITERACY - Quantitative Literacy
  • Goal
    Get better at sizing JI stories based on past Experiences. Not to over commit to stories and always give an honest answer of how long I beleive it will take, as well as give updates in the standup on if my orignal estimate was accurate or not.
  • Action Plan
    Pay attention to how long it takes me to complete different stories so next time something similar comes up I am better at sizing it
  • Measure of Success
    When I can say with confidence how long it will take me to complete a story, and not over commit to different tasks
  • Reflection
    During this semester I was given more opportunity to size Jira stories for myself as well as participate in sprint planning for the next PI at my workplace. this allowed me to be more comfortable with sizing and allowed me to be more confident with how long it will take me to complete a story with maybe a point or 2 of wiggle room.
Goal 3
  • Learning Goal
    COMMUNICATING - Written Communication
  • Goal
    Get better at writing documentation for others to use in the future. For example creating tech notes, test summaries or confluences pages
  • Action Plan
    Keep practicing writing documentation and make sure that all the needed information is needed and think from a readers perspective
  • Measure of Success
    When I am confident that most readers will be able to understand what I am trying to say with little to no explaination
  • Reflection
    This work term has given me the chance to write a few more documentation pages for both internal and customer uses. I believe that this documentation was easy to understand and resulted in very few questions arising from the content.

During my time at NCR I spent most of my time on the Performance Test Team, as well as working on the SCER team on a R&D project for a specific customer. On my team I mainly worked on quality assurance aspects of the code base as well working on development of one of the new applications NCR is exploring, when on the SCER team I was tasked with verifying TLSv1.2 between our application and the database on different configuration.

On the Performance Test Team I completed many tasks each sprint to contribute to my team. Some of the tasks I completed included, improving unit testing on an existing existing code base, to reach quality goal, and run biweekly scans to check for and documenting vulnerabilities in third party application and libraries used in the application. The unit tests considered of J-unit test using J-mock to mock components that couldn't be used during unit testing, for example network requests. Throughout the term I also got the chance to work with many different web service applications learning about deploying managing and deploy and maintain them. Some of the Web Services applications I worked with were IBM Web-sphere, Tomee, Jetty, and Kubernetes with a Tomee server deployed on it. One of the last tasks I completed was Developing a new feature for one of the applications in which I was able to apply some of the knowledge of the programming languages I learned from school, as well as learn the react framework. The other team I work on inside of NCR was the SCER team working with a coworker from the performance test team as well as someone from the R&D team.

One of the others tasks I completed for this work term was Certifying TLS for our applications and the version of an Oracle database the customer was using. This required me to dig deeper in how the database was setup as well as how to connect it to our java application though different deployment methods, WAS, JETTY, and on Kubernetes, most of these skills I had to learn on the job from the help of my co-workers. This required many nights of reach search on how TLS is enabled though the configure files as well as with database settings as well. At the end of completing this task I also had to complete a write up for the client communicating what work was done, how to setup the configuration, and testing done to the connection, and application show the application was working. I also helped out on customer calls for troubleshooting any issues they had setting up TLS between the application and their database, allowing me to gain first hand experience representing the company and working with our customers.

These are just a few of the things I worked on during the term. This term has shown me some of the aspects of being a developer and furthered my knowledge in web technologies, as well as what the computer industry is all about.
Thank you to NCR and all of my co-workers that made this work term possible, and creating a postive work enviroment where I could learn and developer my skills in software developement