Founder of 7Factor Software , a cloud-native software solutions company .
Is your relationship with customers based on healthy collaboration and respect, or on doing what you're told and delivering what you're told?
Software development consulting firms often have one-way transactional relationships with their customers. The customer places an order in a fully defined software form, and the board acts as a robot, placing the customer's order despite knowing that it is empty calories creating technical debt with no real security value.
At first glance, this seems to be the most effective way to attract and retain customers and thus keep your business going. Choose to be kind instead of risking an honest relationship. But when you turn customer expectations down this path of customer satisfaction, the unique value your team brings to the table becomes secondary to your ability to follow through on orders.
This is toxic to your team and against your customer's best interests. It also encourages customers to see you and your engineers as turnkey application developers, differing only in cost and speed of delivery, and easily supplanted by the competition.
Compliance is a lack of good communication.
When you let the client dictate every development and delivery detail, you lock up your team's talent and leave them vulnerable to exploitation. Collaboration stopped and so did critical thinking. This methodology is abused to push developers past the healthy margins of a loose metric service. Engineers are forced to adapt to the process instead of building constructive relationships between intelligent people.
What if the customer specifications do not address the critical limit issue? Or are you underestimating the complexity of implementing key features? Or don't you anticipate how different architectures will better pave the way for future scaling and expansion?
My point here is not that customers poorly define their software requirements (although they can overlook things). Conversely, no one can completely and accurately define software requirements before engineering begins. For apps that aren't as reputable, original specs should only be the start of the conversation, never the last word.
If you don't have open and honest communications with your customers—conversations where you can challenge assumptions and acknowledge roadblocks—you're setting the stage for outdated concepts, substandard code, and disgruntled teams.
Giving customers what they want may not be what they need.
If your customer expects you to do what you're told, they don't understand how software development works and aren't ready for the process that will lead to a great product.
No matter how experienced your technician is, unexpected challenges will arise. Without the freedom to work it out together, the end product will suffer. It's your job to champion the right process and help clients think through important considerations up front.
Does the proposed product or feature actually solve the intended problem? Are you able to pass enough tests? What about requests that could significantly delay the schedule?
Without questions or frank conversation, you can only convey to all parties what the customer ordered, which he does not really need.
Conformity kills creativity.
If you manage developers by client order and are focused on delivery, close the door on finding more efficient and creative solutions.
Conversely, by emphasizing the ability to innovate within a broad set of guidelines, you open up space for your team to create solutions your client may not have considered. Why madly stick to the client's original plan when open collaboration can provide solutions with greater business value that are more secure, scalable, reliable, and scalable?
When you empower technicians to do what they do best, they provide value to customers.
Nobody likes being a robot.
Transactional relationships are too difficult for your team. It's like telling them, "Hey, your opinion doesn't matter. Get back to work and share the code that was given to you. This creates a toxic culture that is fatal to the health and happiness of your team, and it's not just your engineers who suffer.
Developer experience influences user experience. Time constraints became rushed, untested code written by overworked workers who couldn't possibly feel connected to the work they created. What motivates you to go the extra mile? What's the point of a deadline if everything you deliver is full of debt and technical flaws?
Plus, good software talent is incredibly hard to find in a tight job market, so you really can't turn down your employees. (Also, maintaining a healthy relationship is the best thing to do.) You need to be able to win over your team and ensure they have what it takes to operate, validate, implement, and measure a quality solution. at work and outside of work to live a fulfilling life.
Give honesty.
Of course, the customer's business needs and the needs of their customers as users must always come first. That's why we're all here.
But you are the expert and know best how to build a quality solution. When you demand open and honest conversations with customers throughout the software development life cycle, you are bringing out the full potential of your software engineers and the products they build.
At my company 7Factor, software engineering must meet the highest standards. I also believe that good software development depends on a healthy social network, which cannot be developed alone. It's not about choosing between the humanity of my engineers and the value we offer our customers. It should be understood that the two are interrelated.
Software development companies deliver more value when their relationships with their customers are healthy, collaborative, and mutually respectful. While it's tempting to give up on a quick win, it's worth building a mutually respectful customer relationship and maintaining a more agile process.
You will develop a deeper level of trust with more customers than you could if you just did what you were told.
The Forbes Technology Council is an invite-only community for world-class CIOs, CTOs, and technology leaders. Am I eligible?
