Skip to content

Co-op Report 0

This page exists for satisfying the requirement for the University of Guelph's co-op program requirements for the 2022 fall term.

Context

Note I was under an NDA that pretty much does not allow me to reveal anything, hence the general vagueness of the blog.

Interac. But Different ™️

I was working as an 'Innovation Software, Developer' at the Innovation Lab under Interac located in Kitchener. Which means I was virtually unconnected to the popular conception of what Interac does. I did not work on any real financial systems, large databases, or real distributive systems.

Rather, the innovation lab exists to test out new ideas and technologies that might have appeal in the future. The team is small, 4.5 including my supervisor but we sometimes work with outside consulting to temporarily bolster the head count.

What Happened

I worked on two projects, the first being a set of systems and APIs to allow two different parties in the financial world to safely request and communicate information, our systems allow for the different parties to exchange the exact amount of information and only reveal that information for a period agreed upon by both parties, once the time expires, information cannot be obtained anymore without a new round of requests. This project was largely inherited and we worked with an external software consultancy company, I cannot tell you which but it was large and famous 🙂 and we did not enjoy working with them 🙃.

The second project was much smaller in scope and it was greenfield. Although only about 3 weeks were spent on the project including researching and presenting, it was the highlight of the work term and I got to play with technologies that isn't very mainstream[1].

Consulting... You say?

The software consulting business is weird, you can imagine them as cloud services but for providing temporary developers. -- my supervisor

In that he means, if you want some developers temporarily you can spend as much money as you want and get some temporary developers working for you. Is this just a very fancy way of saying outsourcing/contracting? Yes, yes it is.

As stated above, we did not enjoy working with that consultancy, although my supervisor personally told me he had worked with competent consultancy firms before. However, the firm we worked with was not up to standards and we found many practices to be amateur. Nevertheless, end users do not see the code directly and they were very much impressed when they added some non-trivial features in their first sprint (by taking on technical debts). By miracles, our end solution was satisfactory, however, if any more changes needs to be added, my team would have collectively murdered ourselves.

A Very Topical Second Project

Once again, constrained by the NDA, I cannot say too much.

The second project was intended to aid Interac to find a place between commercial banks and the central banks to imagine the next generation of cash and digital money, what role can they play in society, and how might Interac help with that.

To explain the header, it's due to the technologies being used. I can say this kind of technology was used in products and services that dominated the headlines for a long time this year. As stated above, working with that technology was a pleasure (once it worked). It exposed my team to many concepts previously only prevalent in computer science and not frequently used in the traditional world. It made us feel like genuine torchbearers of the great tradition of computer science rather than just code monkeys.

Offices? What is That?


Did you know people used to go to a dedicated place to work instead of just staying in the same room for the majority of the day?


The question cannot be avoided, how many carrots and sticks were used to force us back to offices? The answer is none. The entirety of Interac is fully hybrid and they are proud of that.

However, personally, my coworker and I find myself most productive at the office, so we forced ourselves to go to the office whenever we can. I find the act of commuting benefits me, not in the sense that it's time well spent, I do not believe anybody enjoys commuting, but rather that it forced me to have a very regular schedule, which helps with productivity.

Of all the goals listed on expericeguelph, I considered finding what kind of style and schedule suits me the best the the greatest achievement, far greater than learning about new technologies.

Acknowledgements

Without my great supervisor and my co-worker from Waterloo, the work term would not be as pleasurable as it was. And I would like to thank Interac for providing me with the opportunity to venture outside of the typical CRUD workflow.

Tl;Dr

  • Interac is a very cool place to work, cool people, and cool technologies
  • Some software consultancy companies would cause you to tear your eyes out
  • Commuting might not be as bad as you think

If you want some dump of the technologies used, I will oblige (those I can reveal):

  • TypeScript
  • Containers
  • Java
  • postgres
  • ReactNative

  1. If you find some garbage tutorial on W3Schools, then it's very mainstream. ↩︎