Software Development
Develop software tools for improving your business process.
- Free consultation to determine your needs
- Free written execution plan without commitment
- Limited support after completion of project
See pricing below for more information about how we work!
Overview of the process
Your dream may not be as expensive as you think! With a free consultation you'll find out what we think about your software idea, what it would take to accomplish, and how we can help you get there. For us there are three steps in developing software. These steps are carefully considered to keep your costs down and give you the maximum benefit of our time. We'll consult with you first to establish the requirements of your application and navigate you through the decisions of what is minimally necessary to solve your business need. Once we know what the app should do, we'll create a UI design sketch which roughly demonstrates how the requirements will be implemented in a program user interface. This part is visual-only and provides a cheap way to implement feedback in this planning stage without backtracking on actual development effort coming in the final step. Then we actually implement your software dream using the requirements and design document. You will have access to the source code and final product on completion and we will provide onboarding support to ensure it is properly integrated into your business.
Step 1. Establishing RequirementsFreeContact Us
This step will result in a word document which clearly states the application requirements and miscellaneous notes established during the consultation as well as an initial execution plan.
- What is the deployment medium? (Desktop, Mobile, Web)
- How many users will be interacting with the application?
- What does the application need to accomplish?
- Does there need to be a login?
- Does data need to be saved over time?
- Does the application interact with another service?
Each of these questions will impact the development cost and complexity of the project. For reference, the cheapest requirements are desktop applications, with a single user, with no login, with no data storage, and no interactions with other services. These simple single-purpose programs tend to be 'choose a file' programs where something happens to a file after clicking a button. Complex programs are ones that involve a login, interaction with other services, and data storage which could easily start at $1,000+ and may also have perpetual infrastructure costs depending on the solution.
Step 2. Design Concept$200+Contact Us
This step will result in a Adobe XD mock design document and shareable link which roughly demonstrates surface-level UI behavior before its fully implemented in code.
A UI design document is a useful step of any software project to identify how key requirements translate to interactable components. We will complete a first-pass of this design concept to demonstrate our understanding of the requirements, then provide a link to you which normally inspires further changes. The next step, Implementation, is expensive by comparison so this planning step is a crucial feedback step.
Step 3. Software Implementation$600+Contact Us
This step will result in published source code and a production-ready application based on the requirements and design steps above.
Software implementation will vary based on requirements, but a testing period will commence after completion to ensure the application satisfies the requirements document.
Tools we use to give you the best value
Software Development can be very complex, but most of it has been done before (and probably better). Not to say that your idea isn't novel, but even custom houses have building codes and common tools to get the job done ever quicker and safer every year. Tech Solutions After Hours utilizes this common process as software complexity grows to give you the greatest value per dollar:
- Adobe XD - A UI design tool to quickly sketch the basic functionality of an application. No code is generated in this stage, and some decisions may be overridden when a prebuilt website template is chosen. Design is accomplished mostly through the prebuilt templates, but this tool is helpful for sharing the basic vision before doing any significant work in Bootstrap Studio.
- Prebuilt website templates - There is an entire industry dedicated to creating website templates similar to WordPress and Squarespace themes but for advanced software developers to implement in custom applications. Designing a custom theme could be very expensive especially considering it provides no technical value. Using existing templates allows developers to mitigate that cost and more quickly jump into feature development instead of getting bogged down by styles.
- Bootstrap Studio - Bootstrap Studio is a drag/drop website builder which can modify prebuilt website templates. Using Bootstrap Studio lowers the technical training needed to prepare a template for the needs of a custom application which in turn lowers the cost and time to develop the UI buttons, forms, and levers needed to make a custom application work.
- C# (C-sharp) - A programming language written and supported by Microsoft with support for most application types (web/desktop). C# is considered the improvement to Java with more readable code and better alignment with modern programming practices.
- Eraser.io - A documentation/diagram tool with a key feature - "Diagram-as-code" - which allows a developer to more quickly document a software process without getting bogged down by styles and spacing. All diagrams on THIS website were developed using Eraser.io.
- Microsoft Azure - A Microsoft cloud infrastructure platform with 300+ products to solve a variety of business needs like Azure Container Apps for scalable web applications or Logic Apps for business automation as a service. There are many benefits to integrating more tightly with cloud infrastructure providers and using as many of its services as possible. Using these powerful services means using the minimum amount of custom program development while leveraging the built-in scalability and flexibility of enterprise products created by Microsoft developers.