A day in the life of a Sortable developer Co-op

6 minutes read

Welcome to a Day in the Life of a Sortable Developer! My name is Michael Chi.

Who I am

I’m a software developer co-op at Sortable. I finished second year, going into third year and this is my fourth co-op term.

I maintain the Sortable Analytics tool, and help develop new features on it depending on the company’s needs.

My typical day

Usually I come in at 9am, grab a coffee, and then my team has stands up meeting at 10:30am. The tasks I can finish in an hour and half, I put in this time. Some of these tasks include modifying code that are in PR x based on coworker’s comments, or look over some PR assigned to me. At standup, we talk about what we did yesterday and what we’re going to do for the day. We also mention if there are any blockers in our sprint tasks, and see if any team member can help. Then, I’ll usually work on pull requests or tickets that I have for big projects until 12pm, which is lunch (we get catered lunches every day). Then I start tasks that take longer, from 1-5pm.

The interesting thing was that in my first week, my buddy Agustin * (more on this below) designed tasks for me from simple to more complex so I could catch up on the tech stack we are using (mainly Angular and Scala), as well as getting to know the code base in the process. They’re all real tasks requested by clients or bugs that are affecting clients. After my changes pass PR stage and are approved by the code owner, I will directly push the changes to production and they will be used by clients.

Right now, I have my own standalone project that I’m focused on. My project has taken two sprints and I’m hoping to get the majority done by the third sprint.

Tools to do my job

  • Communication: Because we sit really close, we usually turn around and talk. You just have to tap people on the shoulder if they have headphones on. If they’re typing, I’ll message on Slack. We have a lot of teams working on different projects, and sometimes the code of another team might affect us. Slack is a good tool to look at what other teams are doing and whether it affect us or the entire dev team. It’s a way to be notified when someone says “Hey, I’m going to be doing this and at what time and who it’s going to affect”.

  • Editor: Before, I used Visual Studio Code to write the code until my team mate Daniel recommended IntelliJ. It’s much better (Auto-complete is very convenient!).

  • Tech Stack: All the technologies that we’re using are new to me. I’ve never used them in a working environment before. For Scala, I have never done functional programming before, always used object-oriented designs. For Angular, it is a framework I’ve heard of before. I also used React in previous workterms, therefore Javascript frameworks were easy for me to pick up. In my first month, I have done some dev op stuff that involved using different AWS services, which was another new thing for me to learn.

Recommended books, podcasts or apps

Before an interview, or whenever I have free time and just want to step up my algorithm skills, I read Cracking the Code Interview, and do the practice problems.

I recommend following some big tech YouTube channels, and big tech companies like Google, Facebook, Apple, Amazon or Tesla. Know what they are working on, what new technology they delivered, and what they are planning for the future. An important aspect of being a good software developer is to keep up with the new technologies that are emerging every year. Every morning with my News app, I skim through top stories to keep up.

Did you take anything from past co-op terms into Sortable?

In order to be successful in a co-op term and add more value to your experience, you have to take on something from beginning to finish, and I learned that from my past co-ops. In my second 1:1 with my engineering manager, I asked for a standalone project, and I put a bit of pressure on myself to get up to speed as quickly as possible, so I could take a project on.

In my opinion, I don’t think employers are too impressed when you say “I maintained the API, I upgraded this”. It’s more impressive to say for example, “I created an SSO system”.

Since this is my fourth co-op, I am more familiar with concepts of software development in general. I learned to think (or try my best to think) like more experienced developers—considering scalability, security and maintainability before I start designing the solution.

If you’re a senior co-op trying to get a job in KW, what should you know?

Know what you need from the co-op term and what you can provide for companies. When you’re looking at a company, research and make sure their technology stack matches your interest, and specialize if possible. For example, if you’re a web developer, specialize so that if you have three co-op terms and are going into a fourth, you can point out that you have two years of experience in a field. That’s just my opinion, other people like to experience a wide range in university, like switching to Mobile Dev. It’s different for everyone.

Try to get a chance to work on something from beginning to end, and it doesn’t have to be by yourself. As long as you deliver something end-to-end in your co-op term. Those two things play a bigger and bigger role in your senior year. You’re building a track record.

The preparation is all the same regardless of the number of co-ops you had before: research the company, know the field and industry, know the skills they’re asking for, prepare for coding questions.

When I looked at Sortable’s tech stack, I saw Angular, Java, Scala. I knew I’d be working on web, and that matched my interest. I saw Shannon’s dev blog post and I could exactly imagine working here. It described the environment I like to work in as I wanted to experience the startup culture.

During the interview, Andy, who is an engineering manager, asked for my dream job. I said to have a project from start to finish, something I can deliver. And he said that is exactly what I would be doing.

One thing Sortable did very well - I had the chance to talk to David, the previous co-op at the end of the interview. I was able to get an unbiased opinion about Sortable, from someone who had the chance to work here and experience what is it like to be a co-op at Sortable.

Footnotes

x Pull Request. Everytime we want to make changes to code, we create a pull request for other developers to look over and comment on our code.

* Agustin is my buddy. Every new hire gets matched with someone who helps with questions in the early stage, and accompanies you to lunch so you don’t sit alone on the first day. He helped me by setting up meetings to walk through the entire product, how our product affects other team, and how our code affects the product.


Thanks Michael! To view open roles at Sortable, visit sortable.com/workhere

Updated: