Top Banner
Empower productivity by using the right tools / methodologies
34

Empowered productivity

Jul 04, 2015

Download

Technology

Giedrius Rimkus

My pure experience on how software should be built within teams.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Empowered productivity

Empower productivityby using the right tools / methodologies

Page 2: Empowered productivity

DisclaimerAll the tools and methodologies are based on my own experiences. There is no tool or method which could be applied to everyone. Pick those you think are the best fit for your own environment.

I didn’t get any advantage out of those mentioned tools. It is pure my experience and favourites.

Slides are focused for Ruby developers mostly.

Page 3: Empowered productivity

Teamwork is vitalWhen you think about the colleagues that you come into contact within your enterprise company or a startup team, learning how to work well together is vital.

Page 4: Empowered productivity

Better communication

I’ve recently had an opportunity to work in a team and we were discussing online a lot. It also helped to communicate with team members who work remotely or from other countries.

Page 5: Empowered productivity

Slack.Be less busy

Slack brings all your communication together in one place.It’s real-time messaging, archiving and search for modern teams.

slack.com

Page 6: Empowered productivity

Project managementWhen it comes to project management, it’s important to follow methodologies which help to remove chaos in your workflow, don’t go waterfall way, use agile instead.

http://pointnorth.io

Page 7: Empowered productivity

PivotalTracker.Build better software faster

Simple, collaborative project management from the experts in agile software development.

pivotaltracker.com

Page 8: Empowered productivity

Trello.Organize anything, together

Trello is the fastest, easiest way to organize anything, from your day-to-day work, to a favorite side project, to your greatest life plans.

trello.com

Page 9: Empowered productivity

Code management

Code management and versioning is important part of any software lifecycle, you can’t go without them.

Page 10: Empowered productivity

Git.local-branching-on-the-cheap

Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.

git-scm.com

Page 11: Empowered productivity

Github.Build software better, together.

Powerful collaboration, code review, and code management for open source and private projects.

github.com

Page 12: Empowered productivity

Hints how to use Github efficiently- Uncheck all email notifications- Unwatch all irrelevant repositories- Create specific teams inside your organization:

@backend, frontend, all, designers, po and so on.. This will help to tag people who can review or comment on your issue or pull request or participate in a general conversation. If you can’t mention specific team, tag/mention your colleague straightforward.

- Add continuous integration service to your repository- Don’t merge PR until someone reviews it unless you really know what you’re doing.

Page 13: Empowered productivity

Use Github Pull RequestsPull Request = Code + Issue + Comments

It’s a great way to review other developer’s code and immediately spot possible bugs. It also increases your code quality. Every pull request should be well tested!

Page 14: Empowered productivity

Managing your server infrastructure

Having a complex web application with huge amount of unique visitors, API requests, requires any company to have scalable hosting infrastructure. You’re doomed without any automation tool.

Page 15: Empowered productivity

Chef.Automation platform for the new IT

Chef is a systems and cloud infrastructure automation framework that makes it easy to deploy servers and applications to any physical, virtual, or cloud location, no matter the size of the infrastructure.

getchef.com

Page 16: Empowered productivity

PuppetLabs.Automate IT

Puppet Enterprise helps you make rapid, repeatable changes and automatically enforce the consistency of systems and devices–across physical and virtual machines, on premise or in the cloud.

puppetlabs.com

Page 17: Empowered productivity

Time savers

If you don’t have devops on your team, you can always use any PaaS which will do all the job for you.

Page 18: Empowered productivity

ShellyCloud.Painless deployment. Built for Rails.

Platform for hosting your Ruby and Rails apps.

shellycloud.com

Page 19: Empowered productivity

Continuous deployment

From a wikipedia:

“Continuous integration (CI) is the practice, in software engineering, of merging all developer working copies with a shared mainline several times a day.”

Page 20: Empowered productivity

JenkinsCI.

An extendable open source continuous integration server.

FREE, but you need to host it on your own.jenkins-ci.org

Page 21: Empowered productivity

Using external CI

If you can’t install and config JenkinsCI on your own, you can always try to find alternative FREE solutions.

Page 22: Empowered productivity

SnapCI.Easy builds, deployed when you want

Snap delivers fast feedback so you can deliver high quality software quickly.

FREE tier for a private repository.snap-ci.com

Page 23: Empowered productivity

CodeshipCI.Continuous Delivery made simple

We love having other people build great software with our tools and help them create the best products imaginable.

Up to 50 builds per month for FREE.codeship.io

Page 24: Empowered productivity

Friday Deployments.Out of your mind?

Every company should have rules regarding deployments on different days, especially on Fridays.

You should avoid deployments on Fridays as much as possible.

Page 25: Empowered productivity

Monitoring your app, servers and errors

It is very important to keep track of how your application behaves. It is a good practice to spot all errors before your customers do. There are several good tools which help to do so.

Page 26: Empowered productivity

NewRelic.We are all data nerds

New Relic is a Software Analytics company that makes sense of billions of metrics across millions of apps.

Lite version is FREE.newrelic.com

Page 27: Empowered productivity

Rollbar.Take control of your errors

Rollbar collects and analyzes errors on web and mobile apps so you can find and fix them faster.

FREE with some limitations.rollbar.com

Page 28: Empowered productivity

Graylog2.For data analysis

Field-tested open source data analytics system used and trusted all around the world. Search your logs, create charts, send reports and be alerted when something happens. All running on the existing JVM in your datacenter.

graylog2.org

Page 29: Empowered productivity

Kibana.Visualize logs and time-stamped data

Kibana is a highly scalable interface for Logstash and ElasticSearch that allows you to efficiently search, graph, analyze and otherwise make sense of a mountain of logs.

Kibana

Page 33: Empowered productivity

Thank youFeel free to approach me through the following channels:● https://www.linkedin.com/in/giedriusr● https://github.com/giedriusr● http://about.me/giedriusr

Page 34: Empowered productivity

Empower productivityby using the right tools / methodologies

Giedrius Rimkus2014 07