Adding second part in the series of “Rails Dev Guidelines” now, you can refer to the previous article here.

As a software professional, we would need to have expertise in the following areas, before we can understand and implement any code. It is like knowing the basic maths operations before we can go ahead and try learning some complex theories or algorithms!

Learning & adopting

  • Learning something new very quickly would require to have eagerness, to read, understand and analyse things. We need to wear that “Lets do it” hat and being thoughtful so that we can grasp faster and try things out.
  • Do not afraid of trying, try until you can confirm that “its working”.
  • Create notes and references, so that you can utilize the knowledge/ideas you have gained in the future.
  • Persistence & dedication ­- Patience and focus on what we do, to keep us motivated.

Logic & tools

  • Logic ­- Think before you do anything, logic is not programming but it’s common sense.
  • Master the OS basics -­ Shell/bash scripting, commands, checking log files or access a DB server using command line etc. This is really important to keep you going ahead in what you are doing, allows you to focus on your main goal instead of finding such commands on the internet.
  • Master the tools – ­ Text editor/IDE usage with key shortcuts, compilation/build, setting up the environment, Database servers

Debugging & optimization

  • Checking log files.
  • Debugging web applications
  • Debugging Javascript and CSS using browser developer tools
  • Identify the root cause, optimize the DB queries, tweak the code to fix the issue in a robust manner and improve the performance wherever possible.


  • Software development is an incremental & iterative process, those “fix requirements and design architecture” days are over now.
  • The requirements and ideas would keep changing, new features are added every few days, the team would be busy making the changes and don’t usually get the time for refactoring.
  • Refactoring has to be done every day, with any new change we may need to refactor the code. Without this, the code would be in really bad shape, lifting the unnecessary weight of old junk code!

Soft skills

  • Typing speed should be at least moderate, we should not be running to find keys.
  • To be able to communicate without typos or grammatical mistakes.
  • Able to convey the message such that the team understands what we mean, it is not just the syntax but also the overall usage of language.

We would talk more about some technicalities in the next part, till then keep reading!

At BoTree Technologies, we build web and mobile applications to add value to our client’s business. We align ourselves to ensure that our client benefits the most out of our engagement.

We work in Ruby on RailsPython, Java, React, Android, iOS and RPA as well.

Drop us a line to discuss how can we help take your business to the next level.