Friday, July 1, 2011

The Professional Side of Development

This week was my first week with the Bridge team and it has been a learning experience. I came into my apprenticeship looking for experience in the workplace. During my time at school and while coding on my own time I'm usually working by myself or in very small groups. Our projects are usually limited in scope and intended to teach about a specific piece of the discipline. If a school project is rushed and contains untested sloppy code, that's usually okay as long as it runs. After submitting code for class I usually never look at it again. This project is different.

I joined the project, I did not start on the project. This is the first learning point. Coming into an established codebase can leave you feeling lost. It's like moving to a new city and not knowing where anything is, how to get anywhere, or how the transportation system works. The approach I've had so far is to keep in mind the scope of my problem and avoid heading into areas that I do not need to be in. That way I can focus on implementing a feature without being concerned with other areas.

The second learning point is the multitude of languages and areas of concern when building a web app. I started my apprenticeship not know any javascript, for instance, and I've been learning as I go. It's exciting to take on new languages and be able to control different areas of design than what I am accustomed to.

The third learning point has been everything involved in a project that is not code. Each iteration takes a lot of planning. Communication is constant (daily standups, weekly iteration reports, plus any extra communication needed) and requires a skill set that is very different than the skill set to sit down and write code. I'm learning about workflow and processes in a professional setting, which is a skill that I think one could only learn by doing.

8th Light is getting to me. The project didn't have acceptance testing and I am actually excited to add acceptance tests. Who would have thought?

No comments:

Post a Comment