James Zhang

James Zhang

Front-end Developer at IBM

On the surface level, my role is front-end web development. I'm also interested in design, business, engineering, etc.

18 action items

Know how to work with people who seem arrogant

    • Arrogant people tend to be bad at listening. It's the arrogant people who know how to give and take and understand to be respectful are some of the best people to work with. It's not the arrogance that you should avoid, but the disrespect.

    • Don't tolerate disrespect.

      To a lot of arrogant people, respect is earned, not freely given. Learn to stand firm and defend your self-respect, and most arrogant people will respect that.

    • Understand your limits of toleration.

      Working with people you're not used to is a good learning experience. With risk, there's reward. You get to understand your limits and where you draw the line, and this will be something to carry with you for a lifetime.

    • At the end of the day, look for people with chemistry.

      Look for people you can gel with, but if life gives you lemons, make the best of them.

Elevate the perception of design within your company

    • It's a gradual war, not an overnight battle. Gain credibility by continuing good work.

    • People first, good design second.

      Initially, you're likely not going to do good design work, but that's okay. Instead, focus on bonding with the other teams and care about their problems. Winning their respect is the main objective here.

    • Develop emotional resilience and persistence.

      Don't set your expectations high, or you're just going to get frustrated. Don't stress out about things out of your control, just keep calm and keep doing good work.

    • Develop good credibility.

      Gaining trust and confidence of others in your team will happen over time. Once you have enough trust and credibility, you can get more resources to drive better design outcomes.

    • A list of Don'ts

      Don't spam design thinking workshops. Don't try to justify the importance of good design ALL the time. Don't believe that design is the most important thing in the company. Understand where you are in the ocean of things.

Find data when you have little-to-no users

    • Be resourceful with your network.

    • Get with sales or anyone who has interacted with customers.

      Learning more about the customer is not always ideal, but it's a good starting place. Developing a good relationship with salespeople or product managers who talk with customers will help you a lot.

    • Use your network or your network's network.

    • Look into your competitor's product and find users of those products

      You can learn a lot from your competitor by seeing how they're doing and what makes them successful or not successful. You can even try to user test their products and deconstruct what works well for them and not.

    • Try internal users.

      This may be hard to do if too many people in the company already know too much or if the user you're targeting is too domain-specific.

    • Try Local Meetups.

      Again, this is a networking thing.

    • See if another product team has the same persona.

      If you're in a bigger company, chances are other teams have already done research relevant to your project.

Effectively collaborate with remote teams

    • Communication is expensive. Use latest good collaboration tools.

    • Be tactical with meetings

      Make sure every meeting has a clear objective and is well-prepared. Learn how to be efficient with meetings and keep them lean. Make sure there is absolutely zero ambiguity.

    • Identify good collaboration tools

      New tools come and go all the time. Find a tool that works for the whole team. Any tool that can save you from big meetings is nice. i.e. Slack in a lot of ways actually makes online communication better than in-person communication, because you can handle multiple threads of discussions, craft clear responses, and avoid potential meetings. Other collaboration tools my team has benefited greatly from are Zoom, Screenhero, Github, Zeplin, Invision, Box, and such.... See more

    • Learn to work asynchronously

      Plan and coordinate asynchronous work with remote team in a way.

    • Meet with remote team at least once if possible

      Ideally get to know the people you work with in person. This will make future remote collaboration much easier.

    • Be empathetic with remote people

      It's easy to jump to negative conclusions about remote people. Ideally, you want to treat remote people like you're messaging Facebook friends.