DEV Community

Michael Iodice
Michael Iodice

Posted on

Teamwork makes the dream work.

I've just completed my first Ruby on Rails CRUD website for Flatiron's Software Engineering course.  The jump from Sinatra to Rails came with a lot of new powerful tools, and helped fast track the standard setup for CRUD functionality.  During this project phase, a key lesson I learned was the importance of teamwork.

Every student in our cohort is responsible for their own projects, but I opted to ask a cohort member if they wanted to 'pair' through the process together.  It was a great learning experience, and after having established a rough plan to adhere to, we both were holding each other accountable.

The pairing process was constructive, time saving, and challenging.  We prepared flow charts of our work, presented them to each other.  We had to answer critical questions about design choices, and most importantly get over the fear of 'lost work' to accommodate a good point picked out by the other person, which ultimately yielded each of us better projects.

After planning was completed, we dove into programming and the pair process continued to pay dividends.  Each of us helped the other get unstuck on various topics that we each understood.  The debugging process was always over video chat, and focused mainly on helping the other person connect the missing dot and not simply solving the issue ourselves.  The teaching process helped tremendously to reinforce our own understanding and yielded great satisfaction to help push someone into understanding a topic they couldn't grasp entirely.

The other side of that experience was equally as beneficial.  At a point, trying to solve the same problem hour after hour can become very discouraging.  The time lost on small things that can be quickly explained simply from another point of view can yield much more progress if focused on other areas.  It was great knowing I could get a different perspective on something that just wasn't clicking.

With that extra time, we were able to exceed many of the project's requirements and troubleshoot the process together of getting our first 'local' programs working with Postgres and live hosted on Heroku.  The satisfaction at the end of the day to see a project, built entirely by myself that far exceeded what I could have done on my own in the same time was a critical lesson learned and one I'm glad we took the time to experiment with.  Teamwork makes the dream work.

Top comments (0)