Magneticore

Development, Operations and Design

  • Articles
  • Resume
  • About Me
  • Contact
  • DevOps
  • Featured
  • Astronomy
  • Portfolio
  • UI/UX
You are here: Home / Archives for coralcea

Changing the development culture at work

July 29, 2013 by Jorge Morales

I’m excited

I presented to all the CoralCEA’s team what I have been working on in my spare time for the last few weeks.

Devops methodologies

But first a little bit of background

On top of my development tasks I’m also in charge of deployments which includes Virtual Machines creation to support our architecture.

It is not a difficult task but it takes a good amount of time whenever something gets a considerable update.
For example: A Java update or a security bug.

The usual process is:

  • Download the ISO file of your favourite Linux Distribution
  • Use VMware Fusion to create a blank VM
  • Install the base OS
  • Install
    • Packages
    • Dependencies
  • Build
  • Pre-configure some key elements for the architecture

The down side, as discussed previously, takes a good chunk of time and it could be prone to errors.
It’s easy to forget a parameter or a specific piece of configuration or script.

Then the VM distribution propagates into all the pieces of our development cycle.

Some of the problems and some foreseeable consequences are:

  • A number of VM versions are used by Designers/QA
  • Are we all running the latest VM version?
  • What if something was missing? Re-iterate?
  • New requirements/configuration changes?
  • Slows
    • development
    • QA
    • Response time for bugs/fixes
  • Did somebody say UPDATES?
  • Not agile enough

In an interesting note my team thought that my chat was about some tools but that was just a little bit of the whole equation. The end of my presentation was to change our development culture optimizing our development process.

As for the VM creation what I presented was:

  • Do all of these programmatically
  • In a secure and consistent way

The VM creation was just the beginning of the changes chain I had been working on. The next part was about provisioning and environments. Using tools like Chef and Vagrant. What I demoed to the team was how I bootstrap a whole piece of our stack from scratch and I chose the most tedious one which happens to be also the one where it was easy to forget pieces of configuration.

I also show them the code behind all this configuration magic. Some of the ideas I touched were:

  • We can abstract our architecture and store it in our code repository
  • Where the differences between development and production environments are minimal and known
  • Free some of the team’s time and allowing us to:
    • Focus on new features/requirements
    • Solve issues/bugs
    • Focus more on Coral’s platform and less on all the hosting tasks
  • Optimizing human and computing resources

But it’s more than just the tools. Everyone in the organization has to get involved. It is not just about what the developers or the guys in operations do to find common ground. The idea is to help our organization to become more responsive to changes when they arise and streamline all the areas from development to production.

It was fun

It was fun to see the team attitude change from what they thought it was a meeting about tools to after the demos.
They look exited about what we could achieve in the following sprints. Even all our business wing was asking away about it.

The demos I covered were:

  • Veewee
    • Create VM templates on demand
  • Configure VMs/Servers and our stack on demand
  • Chef
    • Deploy desired Applications
    • Configure Applications
    • Grant dependencies
    • Run required services
  • Deployment
    • Deploy VMs on demand on ESXi/Fusion

About the end of the presentation we chatted about closing the gaps between Production/QA/Development.

 

I will try to post some tutorials on how we use these tools perhaps it will spark some ideas for your own process.

Filed Under: Articles, DevOps, Featured Tagged With: coralcea, devops

Recent Articles

  • Kano Computer for Kids based on Raspberry pi
  • Welcome Home App and Meteor part 2
  • Welcome Home App and Meteor
  • Are we alone in the universe?
  • A new car UI
I'm currently looking for new opportunities. Are you interested, let's chat!

Work with Jorge Now

Previous role

Project Lead at CoralCEA where I led the implementation on Coral platform and Coral's production systems.

 

I’m also in here…

  • Email
  • GitHub
  • LinkedIn
  • Twitter

Copyright © 2025 · Magneticore · My online Resume

Copyright © 2025 · Log in