Three reasons why technology should never be the main focus in software development
Let’s say you’ve discovered a massive gold vein right under your house. With the right approach, you’re going to be set for life. But first, you need to figure out sales, distribution, legal issues, and of course, how you are going to mine it. Is a pickaxe enough for the job, or perhaps you need something more complex? The last one sounds like a trivial matter compared to the rest, right?
It’s not that different in software development. Technology is just a tool to execute your plan. What makes a business successful in the first place is everything around technology. It’s a logical conclusion of what is your goal business-wise.
So, why exactly shouldn’t you think too much about technology in your software endeavor?
1. Business always comes first
Brilliant ideas for software rarely start with the technology. They’re inspired by real-life issues, people’s needs, passions, and hobbies. No company founder has ever said, “I like Python, so I’ll use it for my app and make a fortune.” That’s why, before we even think about coding, we ask our clients about the business. How is it going to work, who is it for, how is it going to make money, and much more along those lines. Only after we understood our client’s business, we can suggest a fitting software solution, never the other way.
A while back, a client approached us with an idea for a blockchain-based platform. In cases like this, there are many different choices to be made, especially when it comes to the choice of blockchain to use. There’s Ethereum, Cosmos, Polkadot, and much more. Each one has different upsides and downsides, so it’s always a vital choice in such projects. But before we proceeded to choose the blockchain, we’ve asked a series of questions about the business side of the project. After the discovery stage, we’ve concluded that the platform doesn’t have to be developed in blockchain at all. The additional costs of blockchain development, maintenance, and gas fee would make it financially insufficient. The moral of the story is, you should always look for the solution that makes the most sense from the business perspective. The presupposed technological preference can often be misleading.
2. Industry experience is much more crucial
It’s a pretty straightforward task to find a team that knows Python, C#, or Java. Just go on Clutch, and you’ll get hundreds of results. Finding an agency that understands your business and industry is much more challenging. At the same time, that’s what makes software development smooth and cost-effective. For instance, let’s say that you have an idea for an application for genome analysis. In order to explain the concept to a team that has no scientific expertise, you would need to spend countless hours answering the most basic questions about the project and its purpose. Why would you do that to yourself? You’re an entrepreneur, not a teacher.
Instead, you could try to find a team that understands your field, can efficiently communicate with you, and even consult on your idea. Their scientific and business background is much more significant. Learning a new programming language for the project is far more manageable than getting a Ph.D. in biology.
3. Good developers can always learn new stuff
A legendary American sportsman Bo Jackson went down in history as the only person who played in the All-Star game in both the NFL and MLB. He was an elite, insanely talented athlete. With his physique and motor skills, he could probably succeed in other sports if he only felt like it.
Good developers are like Bo Jackson. Learning new programming languages comes easy to them. They have solid fundamentals, and they can quickly adapt to new circumstances. What matters the most is their industry expertise, previous experience in different projects, and the ability to communicate and understand the business aspect of software development. So when you’re looking for a software house for your project, try to find like-minded people who understand your (and your end-users’) needs. More often than not, they’ll be able to figure out the technical side.
Having that said, be aware if someone proposes to develop your project in a programming language that you’ve never heard of before. It doesn’t have to be a bad idea by default, but pay in mind that popular tech stacks are popular for a reason. For example, as bioinformatics and Python specialists, we can make our work easier with Biopython, an open-source collection of tools for computational biology. Popular languages have enormous communities, numerous libraries, and there’s no risk that they’ll be abandoned anytime soon like many others. Building software in a “dead” technology is very complicated, expensive, and in many cases, borderline impossible. And if you’re planning to build your own team later down the road, finding devs who know such technology may be a serious challenge.
Technology is just a tool
As we said in the very beginning, technology should always be determined by business needs. That’s why the role of the research and discovery stage is so instrumental for both the client and software house. You should always make sure that the agency will understand your business, fit your culture, and understand your industry. If you got that covered, choosing a programming language for the job should be relatively easy.
So if you’re looking for a software house that always puts your business first, schedule a call with me. I’d love to talk about your project.