Whether its sharing your ideas or feelings, so much can get lost very easily. When I was working on a startup I would watch companies take months to implmenet something I could do in days. I never understood why it took them so long, until I joined a larger team myself.
Meet & Communicate
Finding the time to get everyone together can be tough. Everyone has different schedules so it can be hit or miss setting up an hour together. Once you do, there's so much that needs to be discussed that it needs to be very focused. Even though the meeting is 1 hour long, it's 4 hours collectively (in the case of 4 person meeting) and it also takes away from what people were already focused on. I think email can help a lot here, since you don't need meetings all the time. It is important though to connect with others face to face. There is more to it than being efficient. Connecting on a emotional level helps the team feel closer. When I was doing a startup I just followed the mantra of meetings are evil. I think that is a big reason why I didn't develop as much candor as I should have with my co-founder. This is a great way to try to get things out there and to build candor.
During my first week, there were a lot of things I needed to learn. Without instruction I just did what I always did and tried to work on the most important thing I could with what I knew about the company. I went without instruction for a few hours then had my first product meeting with the team. That was when I learned about anything and everything there was to do. I also got assigned my first task, designing the data browser. This is something I knew we needed eventually but didn't know it was first up to bat.
Design & Communicate
After going through my first design iterations, in a day or two, I met with the product lead to discuss. There was a crucial part I didn't dive into in more detail, so that was exposed and had me back at the drawing board. This is when things got very tricky because many people had an opinion on how this should work. I explored on my own without knowing too much about what currently existed. 30+ sketches later I felt like I had something. I spoke again with the product lead and he felt we were getting closer. A little more polish and we might have something. Then when I spoke with the CEO. He didn't like the solution, feeling it was too constrained. So by meeting the two seperately, we were on different pages. The next step was to get them together to have a collective discussion. This is a week or so in, and remember I'm used to both designing and shipping in days.
Once everyone was in the room there had to be compromises from both sides on a direction to take. There were more things that needed to be explored. So I started doing more designs exploring different types like single window and multiple layered window designs.
Now this is just the communication on the surface. While doing these designs, they are just prototypes and mock ups, mostly on paper or high fidelity sketch files. Designs also need to be presented in a certain way to help communicate what is going on. I first posted screen shots to Asana. Then the engineer who is working on it, took those screen shots and loaded them into a keynote file to then discuss more. I felt that was a little broken to respond to so I then took those to Invision app, then posted an interactive prototype to Asana. As you can see, there is a ton of back and forth going on just to stay on the same page. I'm talking to the product lead, ceo, and an engineer in different contexts. I told this to my friend who is also a designer at two YC startups and he told me the funniest quote. He once said, "Man this shit takes a long time" referring to the amount of time spent translating designs. To which they replied "That's what we pay you for!" (semi-jokingly of course.)
Support & Communicate
When doing support, we work in a few mediums. Google groups, direct email, Github, and Twitter. You can see how this can easily get out of hand as different questions are posted to different areas. Knowing who has responded to what, etc. For the most part google groups and github do a good job since everyone is cc'd. The other mediums not so much. So again this is another area where communication plays a huge role in not letting things slip between the cracks and keeping everyone up to speed. We have things like the ios/cocoa team email all, java/android team email all, that we use to cc the respective teams on any important/unseen questions.
Talking to eachother at lunch or just in general at the office is one of the main ways we communicate. I notice we don't use email too much unless we are communicating the team in Denmark. Even there we use google hangouts to do standups and 1 on 1 meetings. Asana and Github are primarily where the messaging happens, so others can be cc'd, view past history, and follow different tasks. We can schedule meetings with anyone at any time on google calendar although that doesn't happen too much.
Overall it's been eye opening to see how this all works. Seeing how much time is spent communicating a design was the most interesting. Debating whether to code something in html/css/js just to prototype. Or using Xcode to show something as well. Now I realize why it can take companies so long to ship what may seem simple on the outside. There are a lot of different stakeholders, opinions, and iterations to get through. What I'm finding to help the most is to get feedback as early as possible. When it comes to product design, holding off until you have a lot of different iterations can be good since it lets you explore rather than get constrained to a particular solution. Communicating definitely takes up most of the time for product, which is why smaller teams can move much faster than larger ones.