Although working with distributed team members is gaining traction at companies, most people have never worked with a remote programmer. If you're working remotely, don't assume that your client or employer knows best in fact, you likely have more experience with how to work this way than they do. Because of this, you will excel if you proactively offer guidance and set best practices in working together. My company specializes in placing remote workers and, in the process, we have come to recognize that freelance developers who achieve the best results typically follow these best practices.
Get Your Hands on the Right Tools
As a remote team member, you'll probably be working with a team of other people who are either onsite internally, or spread around the world. Regardless, you'll want to be plugged into their workflow and communications grids as soon as possible. If you don't have a thorough sense of their organization, ask for a list of all the platforms that your fellow programmers use for example, Slack, HipChat, Skype, and Google Hangouts. Download them right away and learn to use them well. Or, if you need to rely on internal tracking systems like JIRA, request access if it hasn't already been set up for you. By paying close attention to tools and having them ready to go, you'll increase your value.
The best remote programmers on my team provide progress updates (daily and sometimes twice a day). That's because, unlike in a traditional office setting, team members can't simply walk over to see what you're working on. By providing regular updates, you explicitly define your value to the organization and build trust with your team members because they know you're reliable, thorough, and a good communicator.
You'll probably receive updates from others on your team, as well as from your client or manager. If you need to provide feedback, be as clear as possible and do so in a timely fashion, so if things aren't going well, people are aware of speedbumps and can identify why objectives were missed. Also be sure to communicate in multiple formats. A good rule of thumb is to use two different media for each communication, rather than relying solely on email. If you give feedback during a video chat, summarize what you said in an email. This creates a streamlined feedback loop so communications are accurate, continuous, and relevant.
Finally, help guide efforts forward by scheduling real-time conversations. Talking works wonders when something complicated needs to be cleared up email often just won't cut it. While Google Hangouts and Skype feature talk-only functions, use video as much as possible. Seeing someone's face helps build trust and a smooth professional relationship with your team.