When you are working as a software developer or a product manager overlooking project development cycle it becomes essential for you to manage your time effectively to meet deadlines as well as keeping the workload manageable. Achieving the right balance in both is a difficult task but using the right tools and techniques one can manage the development cycle effectively. So today I am trying to cover some useful tools which can be used across multiple devices and could help increase your productivity.
List of tools:
1)Trello:
Trello is a team-based task planning application which can be used to plan tasks, save useful links and assign tasks to team members according to weekly development targets. Trello works on the concept of boards where each board could be a project that needs to be finished. Now you can have personal boards where you might save and list things that you need to learn yourself like new languages, frameworks or technical concepts. Next are team-based boards in which a senior developer can create a list of tasks that need to be completed in a week/month and assign tasks to himself and team members accordingly. Now within boards, there are lists like ToDo, Doing and Planned which might be useful to keep a track of tasks already done, to be next few days and upcoming tasks. Configuring Trello for mobile/workstations is quite easy and you can always refer help section to learn more here: Help
2)Evernote:
Evernote is a popular tool used by a majority of developers to keep a list of things and points in handy. Evernote can be useful to tool to store minute/points of discussion during team meetings and then notes can be shared to retain the knowledge/key points discussed during the meetings. It can also be used to store screenshots, paper notes and other attachments for a project. Evernote works on the concept of books which contain individual notes. So each team can have their own books with notes shared across the team.
You can also use Evernote for storing personal stuff like your individual music playlist and songs since developers usually have a habit of listening to songs when coding.
Apart from that Evernote can be useful in many more ways which you can look ahead in the help section:
3)Slack:
Slack is team-based chat application kind of like WhatsApp for enterprises. Slack works on the concept of channels where each channel could be based on a project undertaken. The side where it really shines is the number of tools and bots available to ease your life as a developer. For example, it can be integrated with multiple version control systems like Github and Gitlab to get notified about commits and merge requests. Slack bots can be highly configured to automate daily tasks like receiving email from multiple clients and sending replies to slack messages.
You can get help on available tools and setup on slack here: Help
4)Google Calendar:
There are many calendar applications available but I personally prefer Google Calendar to plan my meetings, set weekly goals to learn new things and plan other activities. Since we can save and retrieve events from multiple accounts it allows keeping professional and personal goals separate stored in different Gmail accounts. It can even be used to plan your daily exercises, workouts and diet plans in case you are a developer who takes fitness seriously.
You can set up your calendar according to your needs here: Google Calendar
5)Google Keep:
Although Evernote is a great tool for taking notes nothing can replace a classic and simple notepad. But you cannot have a notepad always in handy. Google Keep is a good replacement for a physical notepad where you can jot down quick notes. It is advisable to keep this app on the home screen for faster access.
6)Pocket:
Pocket is a multi-browser bookmarking tool which keeps your bookmarks synced across multiple devices and browsers. If you tend to switch between workstations and browsers often then this tool can be a great tool for saving useful links like tutorials.
7)Asana:
Asana is a task management software to assign tasks to others and keep a track of the progress of each task. It can also be used to store all relevant project content. It is usually the responsibility of project lead to plan out all tasks and assign them to individual team members based on their skill set and positions.
8)Version Control Systems:
There are multiple version control system available to keep a track of professional and personal projects out of which you can use Github for opensource/public projects and GitLab for private/commercial projects.
Github is known by almost all of the developer community and Gitlab makes up for a nice svn too. The choice of svns will be different across almost all teams and projects since there are multiple svns available across different platforms and operating systems. The above two are just some of all available options. You can use any form of svn based on your needs and requirements :-)
9) Platform as a service:
There are many cloud-based and enterprise deployment and development environments available. Out of the two available options are Heroku and Openshift. Both can be used to set up development environments for multiple tech stacks like MEAN for development purposes.
10) Editors/IDE:
The choice of editors and ide will differ widely based on tech stack and personal preferences. Server-side developers generally tend to prefer vim customizing it heavily. MEAN stack/Hybrid Application developers like to use Atom, Sublime and my current preference VSCode. There are also commercially available/free editors like Notepad++, multiple IDE’s by JetBrains like phpStorm and WebStorm and platform-specific Ide’s like Android Studio for Android platform development and Xcode for IOS platform development. The list is still even more vast but I have just tried to cover the ones I know about.
Bonus Tips:
Keep in mind that Trello is a task planning tool used in the early stages of project planning while Asana is a task management tool which can be used in later stages of the project life cycle.
Connect Deeper:
If you know about more tools that might help the developer community in general then kindly mention them in the comments section. You can connect with me on Twitter or LinkedIn