How Do I Work?

Over the past few years, I've been exposed to various ideas and processes that have affected my way of working in software development teams. From my experiences, here's what has helped me work as efficiently as possible as a software developer.

Written by 

Code consistency

Whenever I join an already established software development team, I ask for which conventions that are in place regarding code style or quality. I'll follow the conventions if they are there and if not, I'll make sure that something gets established. Code conventions such as code style is a subjective matter but isn't something to be religious about. Have a discussion about which conventions to follow and stick to them. That will bring consistency to the code base which will benefit all developers.

Caring like it's your own project

Whenever working on a project, I like to put myself in the shoes of the business or clients. Consider the business goals, not just the technical requirements. I find that if you think about the project like it's your own, you'll start taking more ownership and responsibility. You'll see that you start delivering work of higher quality. You'll avoid any shortcuts in your work. Overall, by delivering more than what's expected of you, the project will more likely succeed which you get to see the fruits of.

Code reviews

Doing code reviews is non-negotiable in my book. No developer is able to write flawless code every time. No matter how many years of experiences you have, everybody makes mistakes and no code should go in the codebase without going through an extra pair of eyes. Here's a few points about code reviews:

  • Code reviews are great for sharing knowledge in the team about what's being added to the code base. No single individual will be familiar with some piece of code and it will help team members find their way around a constantly changing code base.
  • Learn from the feedback you're receiving. Be open-minded to suggestions and don't take critique of the code personally. I always appreciate getting feedback from reviews - I get to learn from experiences of others and improve my code.
  • You should keep the code changes to review to an absolute minimum. I much rather split up a huge PR in multiple, smaller PR's that are easier to digest for the reviewer. We all have only limited memory capacity and focus, so bugs will easily be overlooked if we overwhelm the reviewer.

Learning as part of your daily routine

Wanting to learn should be rooted in all developers. Don't get stuck in the things you already know, or else you'll not advance. What I do is that I incorporate learning in my daily routing. I set aside time every day to touch upon new technologies that I'm interested in. I get to work around 6:30 AM, and I spend the first 30-60 minutes of the day either reading blog posts or watching videos on stuff that I'd like to learn more about. For a couple of weeks, I went through the best WWDC sessions, one session a day. If it's relevant for the tasks on your daily to-do list, that's even better! You'll be surprised to see how much you'll advance if you do this for a few months or even a few weeks.

Conclusion

These are some of the things that have improved my efficiency as a developer the most. I strongly recommend that you take these points into consideration, if they are new to you. Also, I'd love you hear what makes you efficient as a developer (especially if you have some different points than mine).

Share this post

Facebook
Twitter
LinkedIn
Reddit

You may also like

Comparison

Native App vs React Native App – What Should You Choose?

Gone are the days where the only options in mobile app development were native iOS and Android. The choices are broader nowadays, and frameworks have popped up with React Native being the most popular alternative. So what approach should you choose for your next app?

Swift

Start Your RxSwift Journey in Less Than 10 Minutes

RxSwift is well known for having a steep learning curve. But taking the time to learn it can easily be the next significant leap in your development abilities. We’ll cover the basic concepts of the library to quickly get you up to speed.

Automation

The Ten Commandments of iOS Development

Here’s a set of key principles to guide you to do iOS development according to best practices. They are all about the bigger picture of iOS development, including processes and architecture decisions – not simply language specific challenges.