Q&A with a Software Developer
Posted by Buffy the Bison | August 12, 2020
As Primitive approaches nearly a decade of leading the pack by way of digital services and innovative solutions, we’ve definitely had the privilege of being on the receiving end of quite a few software questions.
We sat down with one of our software developers to answer some of the most frequently asked questions surrounding the benefits and cost of custom software.
Is it better to create a mobile or web app?
Simply stated, web application development optimized for mobile is usually the best route for many businesses.
The two main phone platforms are written in two different programming languages, so you will either pay for two developers/teams or have to find one who knows both languages (rare). This can end up costing your business a considerable amount more than anticipated.
A mobile-first web app allows developers to use the same code across multiple platforms and provide access to people on phones, tablets, and computers. This means you save a little money and time upfront, and if the app is well designed, you can easily open the APIs up to allow iOS or Android apps to integrate as well.
Why is custom software such a large investment?
A custom software solution can cost more than one thinks it should largely because we are creating a unique, one-off solution for that client. They, or we, have done the research and see that things like WordPress, Shopify, etc. do not fit what they are looking for, so the journey begins to craft a custom solution you won’t find anywhere else.
Because of that, more time has to go into things like architecting a database, testing, and thinking through problems that may or may not have come up in the initial planning.
How have you seen businesses benefit from custom software?
The biggest benefit is that custom software fits a client’s exact culture and processes, versus the business adopting systems or processes dictated by the software, such as reporting or how to onboard new users.
What methods have you adopted to avoid projects falling behind schedule?
Truth be told, software can find itself behind schedule because once we start writing the code, problems we didn’t think about come to light.
You can only plan so much, and with custom software comes custom rules that developers haven’t run into before that we need to find a way to implement.
Is it bad that software tends to be behind schedule? No, not really. One thing that can cause delays but is worth the added time is when we stumble on an attack vector (methods in which a hacker can infiltrate a system or network) and need to make sure it cannot be exploited when we put the app in production.
Can you take me through the spark notes version of the process you go through to complete a new project?
First, we gather any and all requirements. This includes things like mocking up UI designs for approval. Once we complete this initial step, we start to think about what the database should look like.
From there, we continue the process of working backwards from the database to the backend of the app. The backend is where we save things to the database, get things out of the database, connect with APIs to other services, write files for reports, and validate data from requests.
Once we have the backend finished, we can build up the front end, where we display the data and have forms to interact with the application.
After this, we can start testing how everything works, identify bugs or issues with the software, and look for any security vulnerabilities.
What do I need to know before working with a developer or team of developers?
We can only develop custom software that meets a client’s needs based on the information provided to us.
If a client doesn’t tell us everything up front about what is wanted from the software, or what the client hopes the software will do, it’s a tall task, and almost impossible to hit the mark.
All that being said, Primitive aims to empower all our client partners to ask us questions, with the expectation that we will ask questions in return. Our suggestion? Let us observe your processes for a day so we can truly empathize with you and your company.
What should I look out for when hiring a developer, or team?
When hiring a developer, do your best to observe how attentive they are during your initial meeting.
Skilled developers will both empathize and understand the problem you are trying to solve with software. Another secondary trait that one might be able to observe is if the developer or team of developers maintain a website, blog, or are active in the community they specialize in. This can implicitly show they maintain awareness of current trends while continuously trying to improve their craft.
Anything else you wish people would know about the role of a software developer?
Just as developers want to empathize with you and the users you have, we appreciate empathy with us, as well, when things don't go just right.
Mistakes happen and even though we try to do the best we can, computers like to be silly sometimes.
Hopefully, with the help of our team of skilled software developers, we were able to answer a few of your hard-hitting questions.
Eager to learn more about how custom software can help advance your business goals? Give us a call to set up your free consultation today.