Software Development Company Inside Out
Deadlines! Deadlines! (let them know in advance) Be sure, one of the things that really makes them mad is something called emergency-driven development. Developers (or like almost everybody else) just hate to work under pressure:
Hey John, you’re ready with the new build for the customer? We have a meeting in about an hour. What build? Didn’t I tell you on Monday? Oh, my…
Be sure to agree upon deadlines, so that developers can be plan their time. Another important thing is to come up with real deadlines. Sometimes project managers feel free to present some self-imposed deadlines for the sake of a little time buffer. For instance, a customer expects the delivery on June 30, but PM tells the team that the day is June 20. No-one can deny the fact that developers may frequently deliver things late but…is it worth lying? Here is what Kornelia Sawicka, a PM at one of the oldest software development company Elinext, says: “Being honest with your team is the key to success. Trust, transparency and assistance are our beacons in the darkness.” Rest assured that sooner or later developers will discover the truth and consider all the useless stress or the long hours they went through as a personal insult. Don’t let the stress spoil the party The office life in a tech company may be stressful. Unfortunately, the sources of stress for developers are numerous, and most of them represent technical challenges: a bug which is very difficult to deal with, an intermittent issue depending on threads synchronization or a new update of a framework which messes things up, etc. And developers aren’t the ones to console: PMs are human too. For instance, they can’t find enough resources for the team or their clients are douchebags. Project managers start to transfer all their frustration on developers, and all hell is starting breaking lose. Sometimes it may even lead to…fighting. So what is the outcome? At the same time, engineers have to cope with technical difficulties and PM’s lousy mood which leads to even more stress and less productivity. And while there are exotic ways to cope with the stress, it is important not to get overloaded and control your temper. Only relevant projects, please Believe me: an irrelevant project is the worth thing possible for any developer. Most of the time, it’s just boring and it doesn’t contribute to your career. Instead, working on something challenging has a number of advantages such as additional motivation and the possibility to get noticed in your company. Make learning a top priority. The reason many developers got into software development is that they love learning new things and solving problems. In fact, that’s all they do almost every day. So, when it comes to learning new languages, operating system technologies, platforms, etc. they feel their professional growth and self-realization. After all, we all want to make a change, thus working on something which will provide value to users. Bad QA on the team Unprofessional QA officers can be obnoxious as hell and waste a lot of developers’ time. In fact, they are afraid of them, because bad testers tend to create bug reports for issues that are caused by their own unique environment, report every bug as a priority issue, blindly follow scripts and get confused by non-issues while missing real issues at the same time, forget about crucial information in bug reports, etc. Enough said. Red tape Everyone in the industry knows that: developers hate too much management and red tape. For instance, endless meetings resulting in wasted time and permanent direction changes in the product they build. It makes them sick to deal with project managers bothering them for time estimates five times a day or trying to find out how do exactly they spent their working time. However, a golden mean in management is a must. A team without proper guidelines is lost because of unstructured processes or tasks being forgotten.