Xneelo - Software Engineer

Xneelo (formerly Hetzner) is a web hosting company based in South Africa. I worked at their Vancouver branch as a Backend Software Engineer, working on their Ruby on Rails application.

This was my first experience with Ruby on Rails and web development. It was a great opportunity to gain exposure and to develop new skills. Following agile methodologies and working in 2 week sprints, I had the opportunity to implement and modify services, introduce event based logging throughout the system, refactor the code base, and to write integration and unit tests.

During my time here, I was also introduced to test-driven development. It was hard to get accustumed to this type of development at first, but when I did, I was really glad that I learned this. Test-driven development requries you to write the tests first, then to write the necessary code required to pass those tests. It really makes you think about how you want to implement your code rather than to jump in head first. Also, who doesn't love high test coverage?

I learned a lot while working here and I loved the people I was working with. It was a great environment to be working in. Everyone was so nice and always took the time to answer my questions when I didn't understand something.

PBES - Software Developer

Plan B Energy Storage is an energy solutions company that is focused on lowering the dependence on fossil fuels. I worked at their Vancouver research and development office as a Software Developer.

During my time at PBES I really got to call a project my own. I worked on a graphical user interface, PB Tool, which connected to modular battery systems to log data and to provide real-time data and graphs. What started off as simply adding features to a tool to help with internal testing became so much more.

The base of the PB Tool already existed before I started to work on it. I started to add features to the application to help us with our testing of the battery systems. PB Tool was just an internal application and was in its early stages. The code base for this tool was not structured properly to handle changes in the future. As I started to add features, it only got worse.

The CEO noticed the PB Tool when we were testing the systems and thought that it would be a great idea to have this application available to our production team. It was at this point where this tool became more than just a testing tool for our purposes only. With more members using this application, more changes and features would ultimately be requested.

After brainstorming with the dev team, I worked on decoupling the code base and making it as modular as possible. To do this, I had to break down the application and build it back up. This was such a great experience for me to have gotten as much responsibility as I did. I could really call this project my own. I learned so much while working here and I am really glad I got this opportunity.

Projects

From time to time I like to work on my own projects; whether I want to learn something or if I am trying to fix a problem that I am having. I'll have these projects linked below. It might look a little bit empty right now, but bear with me.

2048

I wanted to learn and gain some exposure to JavaScript. I thought that implementing the 2048 tile game would be a fun project to do.