You did it. You just hired your first developer ... or maybe it was your 100th. Either way, you're growing your company and that's exciting.
But before you start putting work on their plate, you should know that developers are a special breed of people. (I am one, so I can totally say that.) They speak a different language than marketers, making effective communication a bit of a challenge.
To set both yourself and your developers up for success, we've outlined six tips for building a more productive working relationship. While each company is made up of its own unique individuals, we've found that this approach has helped our team get on the same page when it comes time to execute a project.
6 Tips for Working With Developers
1) Include them in the planning process.
Imagine you're a builder working on a brand new house. The owners have very specific ideas and reasons for what they want. They hand you blueprints and say, "Go!"
Can you really just start building? Of course not. Neither can your developer.
Starting a project without a plan will likely result in a ton of questions and potential roadblocks. One way to eliminate those is to have the developer involved in the planning process. Whether you're planning a massive website redesign, a new app, or just a small update to a page, including them at kickoff will help to ensure that they can prepare for the job the right way.
They don't need to give creative input or go into intense detail about certain elements of the work, but simply inviting them to sit in the same room with the stakeholders will make it easier for them to understanding the intent of the project and achieve the desired outcome (with the help of some beef jerky and Mountain Dew, of course.)
But what if your developers aren't in the same building as you? What if they're in a different country? While face-to-face communication is ideal, there are plenty of tools out there to help you and your team communicate. Here are a few of our favorites:
It doesn't matter how you connect with your developers, as long as you're actually doing it. Involving them and allowing them to ask questions will open up a more productive dialogue and show that you really care what they think.
2) Don't make assumptions.
Unless you're a developer yourself, one of the reasons you hired a developer is because they possess a certain set of skills. Those skills can help you figure out what is and isn't possible about your idea. And if they determine that something isn't feasible, they should be able to help you figure out a different approach.
That said, the worst thing you can do is make assumptions about projects without discussing them with your developer first. Assuming that a particular task is easy to execute can lead to misaligned timelines and frustration on both ends. For example, I was recently approached with an "easy" task that took nearly 12 hours to work through. 12 hours.
To avoid this disconnect, make it a point to evaluate the complexity of a task with your developer before you establish a hard deadline. Sometimes the trickiest pieces to code are things that aren't obvious to those who don't speak the language, so be sure to stop and consider this before you utter the words, "Can you do this real quick for me?"
Trust me, your developers with thank you for it.
3) Make a plan and stick to it.
Achieving effective communication requires you to establish deadlines, assign tasks, and establish stakeholders before you start cranking out work.
To ensure that everyone understands the scope of the project, it's a good idea to employ a project management tool. There are a lot of great tools out there to help you work on projects, but these are a few we prefer:
If you haven't used a project management tool in the past I'd suggest starting with Trello. Trello is great because it reminds me of cork board. You create different sections of the board -- to do, in progress, completed, backlog, pizza toppings, etc. -- and add specific posts to wherever they belong. From there, you can drag and drop from one section to another.
If you need something a little more complex, check out Asana, Wrike, or JIRA. These tools will allow you to set up tasks, order their importance, and easily account for prerequisite tasks. There are also a lot of plugins that you can add for things such as timesheets or gant charts. Specifically, if you're using JIRA, you can actually create support tickets to keep track of tasks.
Considering sticking to deadlines is often easier said than done, making a plan will help everyone understand their responsibilities and avoid getting bogged down in particular tasks.
4) Understand what you're asking for.
Don't get me wrong, it's not your job to learn the ins and outs of development ... but it doesn't hurt to educate yourself a little bit before trying to talk shop with your developers.
At the very least, it's helpful if you know a thing or two about front-end development. To help you out, think of front-end development in three major parts:
HTML serves as the skeleton of a web page. Without HTML you won't have any content. Elements such as your headers, text, images, quotes, and others all live within your HTML.
CSS is what makes the HTML look good. Use it to adjust things like font size or background color or do something cool like add a transition or hover effect.
Now these tasks aren't all that these languages do, but understanding this much will make it easier for you to give direction to a developer. If you're looking to do some more self-education, check out these online learning resources:
5) Let them do their job.
"You're going to be wearing a lot of hats."
You hear it all the time these days -- especially in the context of start-ups. What it means is that you need to be open to taking on additional responsibilities outside of your actual job description. However, when it comes to development, leave the coding to the developers.
It's not that we don't appreciate your willingness to try new things and learn new skills, but testing out your abilities on the time-sensitive project we're trying to ship isn't a great idea.
The truth is, stopping to unravel somebody else's code is difficult and time consuming. Often times, it almost always takes more time to debug somebody else's code than when you start from scratch.
Be mindful that most developers need someone to keep their projects organized and to keep distractions out of their way so that they can focus on the tasks they need to complete. Rather that trying to get your hands in the code, it's more beneficial for you to focus on these tasks to ensure everything runs smoothly.
6) Give them space.
If you've spent some time around developers, I'll bet this still of me from our culture video looks familiar:
Truth be told, when my colleagues walk past my desk, I'm normally sitting in front of multiple monitors, with my headphones on, and I probably won't even notice them go by.
So while it may seem like your developers aren't paying attention or engaging with their colleagues, the fact of the matter is, development requires a lot of focus. (It's not you, it's us!)
That said, if you notice your developer looks like they're "in the zone," give them space. Allowing them to do their work uninterrupted will help to ensure that everything gets completed on time.
This certainly doesn't mean that you can't check in on the progress of a project or ask a questions, but consider carving out time in advance for these types of updates rather than just dropping by. This will help everyone involved organize their time better.
Rethinking Your Relationship
If you take one piece of advice away from this post, it's to communicate. Talk to your developers about your projects, don't just hand them assignments. Remember: You're all in this together.
How do you maintain an effective relationship with your developers? Let us know in the comments section below.