Skip to main content

Understanding Your Team

Have you ever been put on a team that is so brilliant and talented and somehow the project is frustrating to deliver? I've come to realize that when working with a team of great people, there needs to be a level of transparency and level of understanding of what we're trying to build as a whole. In the agency realm, typically you'll have 4 disciplines working together to ship a website:

1) Design (Creative)
2) Development (Frontend and backend)
3) Client Services (Project manager)
4) Quality Assurance

My evolved thinking has brought me to the conclusion that there can't be such a thing as blame. Understanding the delivery as a whole will help dispel the shackles of each discipline. Furthermore, each member of a discipline should fully understand how much of an impact their decisions will make on another part of the system. For example, a designer can choose to break consistency by readjusting the website's grid on a particular page. This would have a negative impact on the development team as most of the time grids are set up at the start and they stay consistent throughout the whole website (column widths). That said, it isn't the designer's fault at all--he/she was just doing their job with poorly written requirements. It could've been that the developers didn't voice that out to the designer--that they're pretty much married to a specific grid format.

Another example is how client services could oversell on a feature that could mean 12hours of design work and 40 hours of development effort. If the client services person knew about how much damage that would cause to the timeline, he/she wouldn't have proposed it to the client. As another example, typically technology platforms for websites can't react quickly to client feedback or design changes. We have very simple tools nowadays to help speed up the approval process from clients, such as, Adobe Photoshop; however, since we ultimately need to ship a website as a whole, even if one part of the system speeds up, the platform itself takes time to catch up. This is called backlog.

Working together doesn't just mean sitting together, or joining scrums--It means learning together. If we learn from each other, learn about our disciplines, learn how each discipline affects another, we can be far more efficient because we'll fully understand our own limitations as a team.

Ultimately, much like the beer game, the problem isn't the process or the is actually "us". We fail to understand each other and how each of our disciplines can have a negative impact on each other based on the decisions we make.

Good luck and have fun,
Jaime Bueza

Jaime Bueza is a software developer in Vancouver, British Columbia, Canada. He has developed web applications for Nintendo, Electronic Arts, Ritchie Brothers, Kiwi Collections, Cox Communications and Microsoft. When he's not developing useful software that constantly evolves with business requirements, he's creating tutorial videos for aspiring front-end developers.


Popular posts from this blog

TextMate Tutorial: How to add a Strikethrough keybind to your Markdown bundle

Markdown is awesome for quickly generating Readme's on Github. After looking at other projects using the strike tag, I've decided to create a custom keybind for it in my TextMate Markdown bundle. Here's how:

1) Click the + sign on the bottom left and click New Command.
2) Paste this into the editbox and make sure you name your command "Strikethrough".

For the input field, select WORD in the drop down.
For the output field, select "insert as snippet".
As for the keybind, you can totally map it to whatever you're comfortable with but I chose Command-D as it is the same thing in Microsoft Word.


Plenty of Fish - Lessons Learned Meetup

Today, I had the fantastic opportunity of going to a retrospective by Plenty of Fish. As you may know, Plenty of Fish is the largest online dating site and it was all started by a local BCIT graduate named Markus Frind.

Below are notes that were taken on my iPhone. I do apologize as I am continually editing this blogpost.

What is Plenty of Fish? An online dating site.
Why enter the dating market? Back in 2003, it was the only thing that was interesting to build. Markus already knew ASP but wanted to learn more about building web applications with ASP.NET and improve his skills on his resume. 
How do you deal with the network effects problem? In the early days, Plenty of Fish gained traction through Vancouver and Toronto.  There wasn't any silver bullet or magic around it -- Plenty of Fish heavily relied on organic user growth and SEO. The focus was to retain users more than go out and acquire new ones.
What are some early challenges you faced? Markus actually ended up doing every…

Using Git Hooks: Prepare Commit Message to automatically prepend branch names on commit messages

When you're practicing branch by feature with distributed version control, typically you'll get assigned a ticket or issue and that ends up being your feature branch. Instead of always typing in the branch name in every commit, you can edit your Git hooks (specifically prepare-commit-msg).

Assuming that this is a brand new git repository:

mv .git/hooks/prepare-commit-msg.sample .git/hooks/prepare-commit-msg
vi .git/hooks/prepare-commit-msg

Edit the file by commenting out what was originally in the file and then add this:

Now, whenever you make a commit, it should show up like this in the log:

Since GitHub and Bitbucket both support Emojis inside commit messages, you can do something cute like this

Want more emojis? check out the Emoji Mardown Cheatsheet!