For developers, effective communication is arguably one of the most important variables contributing to the success of a project. It’s essential to create a site or app that fulfills the requirements of its owners while providing a positive user experience.
However, sometimes communication between developers and other team members is ambiguous. Both parties interpret terms, ideas, and the complexity of implementation differently.
A project manager thought they asked for something simple, not realizing they just added 40 hours of development time to your project. Or, they thought something was impossible when, in reality, it takes a mere few minutes to implement. When communicating with developers, it can feel like you need to learn a new dialect just to communicate clearly.
Message sent is not always message received.
Bridging the communication gap between developers and other team members can help you complete projects on time and within scope. It may even help you enjoy cross-department interactions more. To help you enhance your communication skills with developers, we’ve provided a few practical tips to ensure your web and app projects proceed smoothly, including:
- How to talk with developers
- Tips for communicating with developers who work remotely
- The importance of setting your expectations
- Importance of documenting UI clearly
- Common developer terms to know
How to Talk with Developers
Learning how to frame questions to developers, or even just how to talk to them, ensures both parties feel respected, heard, and able to fulfill their parts of the project. If communication in your organization is suffering, your developers may end up with an inconsistent picture of your project vision. Then, they may create an end software or product that doesn’t solve the problem it initially intended to.
Clear communication can also help you keep your project within scope. There might be some great feature ideas you think would be near impossible to implement, which might actually be simple for your development team. Likewise, there might be some changes you would think are simple to implement, which, realistically, might blow your project budget and timelines out of scope.
The good news is there are ways you can enhance your communications with devs. First, make sure you approach all communications with respect. Communicating with respect might seem simple, but make sure developers know you value their work and their time. This might mean checking their workload before assigning them more tasks or making sure you’re aware of the scope of a new feature you’re asking for before asking them to have it complete before the end of the day.
Communicating with respect also means ensuring they know that you know they play an essential part in the success of your organization. This doesn’t take a lot of time or effort – but it can make a world of difference. Ensuring your team feels valued and appreciated will go farther than you might initially realize in helping you work together effectively.
Secondly, when you’re communicating what you need from a developer, make sure you mention why you need it. Why will adding this feature add to users’ experience? First, this makes developers feel like they’re in on the problem-solving. You’re on the same team, working towards solving a common problem. But also, it gives developers time to suggest different ways of implementing a solution that could dramatically reduce the difficulty of implementation, without sacrificing quality.
It’s also important to ask yourself, ‘why do I need this feature?’ Doing so can help you avoid asking for features that will create an overly complicated UI, which may lead to scope creep. If you can’t answer with surety why a feature needs to be included, maybe it doesn’t.
Lastly, defining your process for a project to ensure everyone has a clear vision of the project upfront is essential. Developers and non-developers should have a clear idea of what the finished product will look like, and how to get there. Specific methodologies, like Agile Software Development, may help you and your team get there faster and clear the way for more transparent communication along the way.
Tips to Communicate with Developers Who Work Remote
The world is transitioning to remote working at an incredibly rapid pace. The majority of Gen Z and Millennials work remotely each week. If you or your development team is working remotely, there are some tremendous internal communication tools available to help you communicate more effectively online.
From messaging apps like Slack to team collaboration software like Zight (formerly CloudApp), there is an abundance of software and tools to aid in communicating with your team; developers or not.
Just because your team is remote, doesn’t mean communication will slow down. Make sure you’re available – whether it’s responding within a reasonable time to messages or emails – or making yourself available for a quick video call.
The Importance of Setting Your Expectations
We’ve all heard the adage ‘no one is perfect.’ As you can assume, this also applies to developers. There are real people behind the process of building your website or app – and they may not do it perfectly every time.
Of course, developers don’t write bugs into their work on purpose. Trust us; they’d much rather write it flawlessly, then work on implementing new, stunning features for each release. However, they may miss something. Instead of focusing on placing blame, shift your focus on helping them find a solution. We recommend setting your expectations and even testing your code to make sure it all works as you’d hoped.
If you find a bug, send them a note on what you’re experiencing, and how it should be functioning. Keep in mind, there’s a lot of variables, and your user experience might be slightly different depending on your device, web browser, and more. You can use a great tool like Zight (formerly CloudApp) to send an annotated GIF or screenshot to show them exactly what’s happening on your screen.
Clear UI Documentation
Are you of the opinion that less documentation is better for software development? Many modern methodologies would agree with you. However, your development team may not. Sure, you can over-document just about anything. However, providing clear documentation for user interfaces (UI) is one of the keys to a smooth development project.
The UI is the blueprint to any project. It effectively communicates to your developer team how data should be formatted, where it should be, and the overall flow of the website. A thoughtfully and carefully designed UI will make your developer’s work more comfortable and strengthen your project flow.
Typically, after designers have finished designing and meticulously polishing the UI, they hand it off to the development team. At this point, some designers may be tempted to toss it over to developers without ever looking back or checking in. It’s safe to assume the developers will know exactly how to implement it as a designer imagined, right?
Found a developer who can grasp your vision without ever checking in? Excellent. But more often than not, the development phase needs to be a safe, open space for continued collaboration between developers and designers. If anything, this is where designers should be more involved.
Real data may not match your mockup precisely. There needs to be continual communication to ensure if there are any hiccups, you can collaborate to find a solution that works for both parties.
Common Developer Terms to Know
If you’ve ever worked with a developer, you may have felt like the two of you were speaking two different dialects. Sure, understand the words – but why do they keep mentioning the ‘API’ and the ‘backend’?
We’ve summed up some developer terms to know to help aid you in your next conversation with a developer. Whether you’re a project manager, designer, or anyone involved with the dev team, these are some common tech terms to know to enhance your communication.
The back end of a website refers to the ‘behind the scenes’ inner workings of a website or app; or the ‘under the hood’, if you will. These are the building blocks of a project that make it run. Typically, these elements aren’t visible if you’re interacting with the site or app.
You may have heard the term ‘full-stack’ developer thrown around – but what is it? What do developers do when they’re ‘full-stack?’ Essentially, a full stack developer has knowledge and expertise in enough technologies to finish an entire product. They know the back end, front end, and database. Keep in mind; there are many different types of stacks, such as web stacks, mobile stacks, or native application stacks.
DevOps is an abbreviation for ‘Development Operations.’ This movement focuses on bringing development, quality, and operations teams together to aid in communication and collaboration. Ensuring smooth communication can help projects run more efficiently – and produce more stable releases. You can learn more about this topic on a previous Zight (formerly CloudApp) Blog here.
Frameworks are a collection of components, programs, and tools used for development. Developers could collect each of these building blocks and tools separately. However, frameworks provide the convenience of combining all these components in one place. Common frameworks include Ruby on Rails, React, or Angular.
Applications, also commonly known as ‘apps,’ provide functions to users or other applications. This could be something inside your photo or editing software, a website, a word processor, or even customer support programs like Zendesk.
Bugs are generally undesirable, in the real world, or the development world. In the development world, bugs are glitches in the coding that prevents a program or website from running correctly.
API stands for “Application Program Interface.” Put simply; it’s how applications communicate with computers and vice versa.
UI stands for ‘user interface.’ This is what the user sees on the front end when they interact with your software.
CSS is short for “Cascade Style Sheets”. Essentially, this is the code that tells your browser how your website should be displayed. This includes global styles for menus, fonts, colors, and more.
CSS3 is the most recent version of CSS. It works together with HTML5 to create responsive, interactive websites.
HTML stands for ‘hypertext markup language’. It’s a coding language that is standard for creating web pages. It’s one of the most basic building blocks a developer needs to create a website.
HTML5 is the most recent version of HTML. It works together with CSS 3 to create responsive web applications.
Responsive Web Design
Responsiveness is an approach to web design and development that suggests a website should respond to the user’s device. So, if you’re on a desktop, mobile, or tablet, the website responds accordingly, ensuring the site looks, feels, and functions normally.
Clear, effective communication can add an incredible amount of value to your project. It can help you stay in scope, release better products, and ensure everyone on your team loves showing up to work every day. Communication with developers can be hard when you feel like you’re not speaking the same language, however, we hope these tips to communicate with developers help you and your team communicate more effectively.
We recommended clearly documenting your user experience before handing the project off to your developer, defined a few common developer tech terms to know, explained how to talk to developers, shared a few tips to communicate with developers who work remote, and expressed the importance of setting your expectations for a project.And if you choose to outsource the development process, Develux is a service that will provide you with a dedicated and experienced development team.
We also recommend downloading a free version of Zight (formerly CloudApp) for you and your team. Trust us; it’ll make communications for your entire team a breeze. Zight (formerly CloudApp) gives the customer access to screen recordings, screenshots, and snipping tools. Zight (formerly CloudApp) is available on Mac, Windows, and even as a Chrome plugin, meaning everyone on your team should have access with their device.