There are a lot of high-achieving, brilliant-minded developers at Distillery. My duty as a project manager is to improve my skills and theirs, thereby helping them achieve amazing results that make both them — and our clients — look good.
Unfortunately, in my experience, not all dev teams know how to significantly increase the quality of their work and their services. Accordingly, I’d like to use this blog post to focus on some of the not-so-obvious things that make a good developer. You’ve probably read a lot about this topic in other blogs, however, so I want to make sure I’m truly adding some new insight. With that in mind, below are some of the seemingly universal principles I’ve learned through different periods of my professional life while working on projects both big and small.
1. Task descriptions and requirements can be gathered by all team members.
It is absolutely right to ask project management, analytic, QA, or any other product-side professionals to add descriptions to the tickets. But sometimes those folks are stretched across a few projects, making them bottlenecks for your awesome project.
- Our Distillery developers can help a product team by adding those descriptions during grooming or sprint planning. But that’s impossible without having deep product knowledge — Which brings us to our next point.
2. Perfect knowledge of the product and all flows is a must-have for a development team.
To achieve this “perfect knowledge,” you first need more communication with the product team and the client. Second, you need time allocated for the study of all UX and UI flows. This is especially important during the earliest stages of the project (e.g., pre-development, prototyping). But I promise — It’s really that easy!
3. Look at the project through the eyes of the end user.
Ideal code is great. But if that ideal code doesn’t help the end user reach his or her goals, it’s not okay. I’m not talking about bad code vs. good code. It’s about functional code vs. ideal code. So don’t waste your time on something that users will not see, notice, feel, or be affected by. Instead, even if you’re a developer, focus on making the product convenient for the end user.
4. Do product research to understand the needs of the end user.
This may be obvious to any designer. But most likely, my colleagues from the developer department would prefer to spend their time reading about new technologies or programming languages (which is completely okay — it’s their passion, after all). But from time to time, it’s good to learn something about the products themselves. For example, find a similar project to the one you’re working on right now, and compare it with your product. Is it better or worse? Can you use some of the ideas? All this information helps in the end.
5. Be mindful of quality control.
In the production cycle, the developer is now one of the last links in the chain on the path from idea to realization. In the past, developers were used to working with imperfections and ideas that weren’t fully polished. But now, the weight of quality control also falls on their shoulders. What to do? Well, direct the team’s attention to the issues you encounter, and try to find the best way to solve them together.
6. Remember that frontend is the new design.
Nowadays, the number of screens, flows, and elements in each website or app is so huge that there is no designer who is capable of designing them all. From a UI perspective, the design itself is no longer a static image, but rather a smooth and clear transition between all possible states of a page (see Google’s Material guides).
7. Cultivate soft skills, like communication.
This is something that’s crucially important for building a strong team. In our software development world — which is one exclusively made of teamwork — personal qualities have long been equated with professional ones. But a modern developer is not a geek or a freak, and certainly not a child. Modern developers should be the consummate professionals, and excellent communication should be their distinguishing skill. Also, at Distillery we involve our clients in the development process, so developing strong communication skills is important for service quality.
8. Be a mentor, and delegate to educate.
I sincerely believe that the biggest advantage my senior colleagues have (regardless of their fields) is the ability to teach. The higher their level, the less work they should do themselves. Instead, they should control results and monitor the quality level of the developed product. It’s necessary to give experienced team members regular opportunities to share their knowledge.
9. Give accurate estimates.
It doesn’t matter which methodology you’re using. The ability to provide a correct and realistic assessment will be incredibly useful for both you and your company. There will always be tasks you have never faced before. Concentrate on your related experience, and not on what you don’t know. A competent assessment eventually results in the right timing, and the right timing leads to a qualitative result and justified expectations, which makes customers happy and your company prosperous.
Want to learn more about how Distillery’s project managers and developers strive to deliver the highest-quality products possible to our clients? Let us know!