What makes Brandon Cross different?
Brandon Cross consultants are problem solvers, and our objective is to meet the needs of our clients by helping them create innovative software solutions, or breathing new life into their existing software or software development teams.
This may involve us in one of a number of ways, such as
- providing the necessary technical oversight to keep things on the straight and narrow, mindful of the commercial realities but also the technical challenges faced by the team.
- mentoring their existing development team to help them to work better together and refine their technical and collaboration skills, and produce better quality code.
- or taking on the entire software engineering and delivery process from concept to completion, while minimising risks and allowing our clients to remain in control of budgets and timescales.
Unlike most software development companies our main objective is not to keep our team of consultants and software developers busy, or even necessarily create the software ourselves. The main objective is to meet the needs of your business as cost effectively as possible, while following a strategy which protects your investment and gives you the flexibility you need.
It is better to use off-the-shelf solutions, if they will meet your needs with the flexibility required to adapt as your business grows and develops. Often though that is a big "if" and the compromises too great.
Our ideal clients have already concluded that an off-the-shelf solution will not adequately meet their needs. From that conclusion we can help take them the rest of the way.
What are your areas of experience?
We have a very diverse range of experience, which is our strength. We have worked with some big named brands such as Vodafone, GlaxoSmithKline, AstraZeneca, JD Williams, Oracle and BP (British Petroleum) and smaller outfits including Bridewell Consulting, JJS Manufacturing and our favourite national charity Calibre Audio for which we provide their accessible audio book streaming service for the print-disabled.
Our long established experience with Artificial Intelligence has led us into many clients where we help contact centres provide customer support using Case Based Reasoning to provide intelligent interactions via email, chat and web self service portals. We also have years of experience advising clients on how to protect their digital assets and intellectual property with our expertise in digital security.
Technically we have worked with legacy applications, traditional client / server solutions as well as multi-tier web applications and mobile Apps. Our preference today is to help bring clients into the 21st Century with modern technologies, whether that means fresh new innovative solutions or reinventing and replacing legacy business applications. This means we rarely have to deal with desktop installed applications but provide functional capabilities through modern web browsers for the desktop and progressive web apps for mobile devices.
With all this diversity of experience we are able to bring real world, as well as technical, experience to any situation whether it is for a particular market sector, for addressing issues with legacy software, or creating a new cutting edge apps.
What support services do you provide?
We can tailor the support we provide to meet your needs. This can be anything from ad hoc support calls through to 24/7 support packages. This will depend on your budget and operational requirements.
The most cost effective option is support cover provided during normal business hours (9am to 5pm) on a quarterly rolling contract. We work with you to assess the likely call upon the services and the response times and coverage required, and then determine a budget and resource allocation which best meets your need. At regular reviews this can be adjusted up or down to ensure you are always getting just what you need.
I can't find the answer to my question on this page.
If you can't find the answer you are looking for then do get in touch and we will be happy to help you.
How can I protect my business idea or technology investment?
Clients often come to us with great ideas for a unique business offering or new technical innovation. With our standard engagement model the idea remains yours. To give you the assurances you need, we are happy to sign any pre-engagement terms you may require before we take things any further. This is usually adequately covered by a standard mutual non-disclosure agreement. We have a standard document we can use, or we are happy to work with yours.
What are the commerical terms for your services?
The commercial terms under which we create solutions or provide services is something we agree with our clients up front.
This may be:
- the provision of suitable software engineering and development resources on a day rate basis.
- a fixed number of days at a fixed price for a set program of consulting, such as a system and process review or a defined set of workshops or reports.
- an agreed number of consulting or software development days per month at a pre-agreed rate.
- a fixed price for the development of a sufficiently well scoped and specifed bespoke solution.
Which is best will depend on a number of factors, including how well defined or fluid the project deliverables are, how much flexibility the client requires to adjust and steer the project as it is delivered, and the level of risk, both for us and for the client, in the delivery of the required functionality.
Our payment terms will depend on your preferences and what makes most sense for the project. For consulting engagements we will invoice monthly based on work completed. For software development projects we can charge per day or agree a payment scheduled tied to agreed delivery milestones. Support contracts are invoiced monthly in advance.
Who owns the software that you write for me?
The solution we provide to you will be yours. Once delivered and paid for, you can maintain the solution yourself with or without our assistance. We will provided everything you need to build the solution yourself as part of the handover process.
Any pre-existing software that we use will remain with the original owners. Such software may be third party licensed software or cloud services, in which case you will need to purchase the necessary license or subscription from the original vendor. (Unless we do this on your behalf as part of a separate service agreement.) We will make everything clear to you up front to make sure you are happy with the choices we make and the ongoing commitments this may require.
We often use Open Source software components which are provided free of charge to reduce ongoing charges and total cost of ownership.
In some cases we may use and adapt pre-existing Brandon Cross software for which we own the copyright. In this case we retain the ownership to such components, however you will be free to continue to use such software as part of the overall solution delivered to you as part of the project, even after any support agreement you may have with us has lapsed.
Will automations have the ability to do my job in 2030?
Robotic automation and AI is going to change the world. Many more repetitive physical tasks will be automated. Cars will drive themselves. Factories and warehouses, which already have a lot of automation, will continue to squeeze out humans. Houses will be effectively 3D printed. AI can even create music and art.
BUT, the world is messy and fiddly, and there'll be things which only humans can do for a long while yet. You won't find a robot mending a broken roof or fence, doing the ironing, weeding, arranging flowers or cleaning up after your kids. At least not by 2030 (if only because it won't be economic.) Sure, some jobs will become obsolete, as they already have done.
When did you last speak to a telephone operator, or have to have something copy typed? Further, people need people. Would you like to go to a restaurant where your selected meal is delivered from a vending machine? No, didn't think so. How about a musical theatre show played only by robots and projections. No, not that either.
Technology will change the world and it won't all be for the better. Big tech companies have big responsibilities. Meanwhile vote with your habits and your wallets.
What if I want you to work with a technology that you are not familiar with?
If you are already heavily invested in a specific technology for which we are not sufficiently familiar then we have a number of options:
- If the technology is sufficiently modern and it would be of benefit to us for future projects then we may choose to acquire the expertise ourselves at no cost to you.
- We may subcontract for specific skills, subject to your agreement. If we subcontract for any part of the work we will take full responsibility for the quality of the work and provide any necessary ongoing maintenance and support.
- We may direct you to a suitable software development partner who does have the skills and experience required.
- We may recommend alternative technologies if we think this may be a better long term investment for you, particularly if you are working with a legacy technology which may have a limited lifespan.
For greenfield projects our clients typically have a business problem to solve, or opportunity to pursue, in which case the technology choices are less important to them, and we will help determine the most appropriate and cost effective technology to use for the task; while minimising any associated risks to protect their investment.
What is a Native App?
A ‘Native App’ is an App which has been written to work on a particular device type, usually iOS or Android. Such apps have access to the full capabilities of the phone such as being able to use the microphone, camera, GPS location, motion detection and so on. They are written in programming languages like Objective-C, Swift, Kotlin and Dart.
When Apple first invented the iPhone ‘Native Apps’ were just the built-in apps which were preinstalled on the phone. However, due to community pressures Apple conceded and third-party developers were also given the ability to create Native Apps, and in doing so the ‘App Store’ was born.
How do you ensure a project provides a return on investment?
When developing business software, the trick is to ensure you are gaining value from it at the earliest opportunity. This helps to de-risk the endeavour and maximise the return on investment.
If you are part of an organisation that develops software, or you have an in-house system created specifically to support your business process, then you know that creating new features and capabilities requires patience and dedication.
There will always be something more that you want. But that doesn't mean you can't make the most of what you already have. You need to make sure that the system is sufficiently capable to add value from the outset.
"Better is the enemy of done". You can always make something better. But to get value from something it must be in use. Users of the system become a vital part of the process as they provide feedback and requests for new features.
To make more rapid progress consider leveraging existing solutions or components. There’s no need to reinvent the wheel. But in modern technology there are lots of wheels to choose from, and not all wheels were created equal. Don’t over commit to a particular wheel, as you might need to change it.
How do you make sure your systems have the flexibility you need?
Why should I consider bespoke software for my business?
We should start by saying that if you find software which meets your needs perfectly without modification then, cost not withstanding, use that. If an off-the-shelf package is the best answer for you then we can help you with that too.
The chances are though that your business is unique and the software you may be using doesn't do all you need or want, or isn't flexible enough to adapt as your business has had to adapt. Our approach is business led, looking first at your business and its processes to determine where things can be improved and optimised. Any project has to start with a valid business case with a clear objective and identified return on investment.
Whatever your situation our objective is to meet the business need while writing as little custom software as possible. We select and use the right combination of existing components and cloud services to bring together the right technologies into a solution which fits your business, removing inefficiencies, inconsistencies and opportunities for human error.
This FAQ system itself is very simple yet with powerful search technology using a combination of just a few Open Source components and a bit of know-how.
Bespoke software isn't always the right answer, but like a good suit it can be created to fit your business perfectly, and it's not as expensive as you might think.
Do you write mobile Apps as well as software for Windows or Mac?
We write software for all sorts of circumstances. Generally we prefer to write software to be as flexible as possible to work on a wide range of systems. To do this we usually write software using web technology so that it can be accessed through any browser on any platform. That way it can be accessed both on Windows, Mac, Chrome Book and Linux computers as well as Android and iOS mobile devices.
We are more than happy to build Apps for mobile devices, either just to make them available through the App stores, or to take advantage of the devices specific capabilities which may not be available through regular browser technology.
If your particular requirements demand that software be written to be installed on desktops, laptops or other devices we are happy to do that for you. But, we do recommend using browser technology for easy of deployment and support if that will meet the need without compromising on functionality or user experience.
Why did you decide to write your own FAQ software?
There are other FAQ systems out there. So, why did we decide to write our own?
FAQ systems come with different capabilities. Often, they just create a list of questions on a page, some will dynamically list the questions in order of popularity, many will have a simple keyword search, but these are often very hit and miss – with the user not finding what they want with the keywords they use or finding a sea of articles rendering the search almost useless. Aside from functionality we wanted to create something which helped to demonstrate our approach to solving problems, and the FAQ is a fairly simple problem; but one with potential.
The system was put together using just a few open-source components and a bit of magic sauce to create an intelligent search capability to help you find what you are looking for. You can ask what you want, the way that you want, and it will rank the answers based on those which it deems most relevant to your question.
We will be adding more content over time, but the content in the system is sufficient to demonstrate the concept and also to answer your questions about how we operate as a business. Don’t ask it for recipes or political opinion as it won’t have a clue.
For the technically minded, this has been built using node.js, a content management system (CMS) called Strapi, and a machine learning algorithm to support the intelligent search capability. As a bespoke system it also has the benefit of being able to be extended and enhanced. We are also using some of our own components which allow us to build web-based business applications more quickly.
In terms of demonstrating our approach - we took a problem, identified some reusable components, and created a solution with a very quick turnaround. • The system allows new questions and answers to be added very easily, through a convenient interface, for which we didn’t need to write a line of code. We just used Strapi and integrated it with our node framework. An integration we can use over and over again. • The machine learning algorithm is a library component. There’s no need to reinvent wheels which already exist, particularly if they are free or cheap. This algorithm did what we wanted it to do and was very easy to work with. We could have used third party cloud services for this, but we found that we didn’t need to; saving us from any ongoing usage fees. • As the system is used new content can be added based on how it is being used, so it can improve over time based on what people are looking for, and the site is completely SEO friendly.
Do let us know what you like, or don’t like, together with any suggestions you may have.
We help organisations with their software development needs. This can be anything from a short consulting engagement to review existing development projects which may be struggling through to complete system design and implementation and operational support. Our goal is always to create something that works, adds value to the business, and has the flexibility to be adapted as the business changes and grows.
How do I turn my vision into reality?
From vision to reality…
Do you have a vision for a new business? Could you be the creator of the next Twitter or Uber?
A good idea is no good if it just stays in your head.
The problem with global unicorn businesses is they are usually created by someone else, because not only did someone else think of it first they actually did it first.
Some businesses are decades in the making requiring massive investment, expensive research, and development along with unique market insights.
Most however are simply born of a great idea put into action.
The backbone of many high value businesses today is purely digital. Information is the oil which enables real world services, global communication and coordinated action.
At Brandon Cross we specialise in digital innovation; putting existing technologies together in new ways to fulfil a vision; turning vision into reality.
If you’ve got a new great idea for your business but don’t know how to put it into practice talk to Brandon Cross.
How much does a project typically cost?
This is a bit like asking how long is a piece of string. It depends.
Some projects are super short and still deliver significant value to a business. This might be something like a week to deliver a scripted automation of a repetitive task. In this case the return of investment can be quickly recovered.
Other projects can be major innovations involving some technical research and prototype development, followed by the deliver of an MVP (Minimum Viable Product), and then multiple product iterations thereafter.
The smallest projects might be about £1000. The largest could be well north of £100,000. Most are somewhere in the middle such as a few £10,000s. The best way to find out is to start the conversation and then we can work our which ball park you might be playing in.
Whatever the size of the project we work with you to de-risk the investment, which will often involve a evolutionary or phased approach.
What is a Web App?
A Web App can be downloaded by your users directly from your own web site without having to pay Apple, Google, or anyone else to have it on their App Store.
When Apple first invented the iPhone ‘Native Apps’ were just the built-in apps which were preinstalled on the phone. Everything else was going to be a ‘Web App’, so they are nothing new. However, due to community pressures Apple conceded and third-party developers were also given the ability to create Native Apps, and in doing so the ‘App Store’ was born.
A well written Web App running on a modern phone can be just as responsive as a Native App for all practical purposes. You really wouldn’t notice the difference. You wouldn’t write a fast-moving action game as a Web App, but for most other things a Web App has some definite advantages.
A Web App can be written so that it will work on Apple devices, Android and in regular browser on your desktop or laptop. Modern ‘mobile responsive’ design means that an app can scale seamlessly to fit whatever screen size is being used. This means you can write an app once and it’ll work on pretty much whatever you want it to, whether you are in the office, on the move or at home. Because it relies only on browser technology it will work the same everywhere.
What is 'technical debt'?
Technical debt is a term used in software industry to refer to all those shortcuts and compromises which are made in the short term to get a software solution delivered, usually to hit a time or budgetary deadline.
Like monetary debt, a little is no bad thing to help smooth things out to meet your immediate short-term needs. But like monetary debt it needs to be managed and over time repaid.
Failure to repay the debt, like financial debt, is unhealthy and causes problems.
All those shortcuts and compromises will slow down future development and make things messy to work with and cause quality and performance issues which can impact your customers, as well as cause frustration for your development team.
For developers, having too much technical debt can be described as ‘walking through mud’ or ‘swimming in molasses’ as the drag effect significantly impacts their ability to deliver. To follow the financial analogy, it is like having to pay interest on debt, potentially at quite high interest rates. Indeed, there is a real financial cost in the real world as everything ends up taking longer.
As with monetary debt it is best not to have any debt to start with, but if you do to pay it back as quickly as possible. Clients will have better quality solutions. Developers will be far happier and will be far more likely to stick around for the long term.
If you need a payment plan to reduce your technical debt, get it touch and we can help you through the challenges to get your development team performing again.
Why are consultants so expensive?
“If you think it’s expensive to hire a professional to do the job, wait until you hire an amateur” – Red Adair
Red was an expert in fighting oil well fires. The job had to be done, and it had to be done right. Failure would be disastrous and potentially deadly.
In your own business the cost of failure can be also be high. It is natural to seek to save costs, but a wrong decision can be a false economy.
Project failure could mean that you have to start all over again, wiping out any possible savings you might have hoped for; and the delays, additional costs compensating for an inadequate solution, and potential loss of reputation, could haunt your company for years to come.
There are usually many ways to approach a problem. There are online resources which can help. Some material is excellent, but a lot is biased, ill-informed or just confused.
In whatever field, professionals have years of experience, handling many different situations; and in doing so learn many lessons and insights which you just don’t find in books (or online.)
I guess in recent times people have had to cut their own hair or even pull their own teeth. But given the choice, would you?
What are good software development strategies?
Investing in business software can be fraught with risk and difficulty, but not if you adopt the right strategy.
There are two phrases we use a lot when discussing options with clients and prospects.
The first is: “Evolution, not revolution”
Old systems which work may not tick all the boxes, but they do tick the “working” box. Such systems can often be augmented or supplemented by newer technology which can provide additional capabilities and fill in some of the gaps.
Progressive improvement, without a massive change programme and associated budget, enables you to enhance your business’s processes and productivity over time.
Newer more adaptable systems or components can progressively take on the tasks previously only handled by your legacy systems, eventually replacing them altogether.
Our second phrase is: “Easy in, easy out”
If you are investing in a new technology it should be easy to adopt, but also easy to ditch!
While the latest shiny solution may do all you want now, technology changes extremely fast. It can be all to easy to over invest to one solution making it difficult to change later. You need to be ready and able to swap it, or bits of it, out without significant cost or disruption.
What software technologies do you specialise in?
Brandon Cross has an exceptional team of developers specialising in numerous programming languages and technologies. By preference we use well established programming languages and technologies to provide long term security for your software investment.
Alternatively, if you have other preferences or existing software investment, we are just as at home using other languages such as Java, C# or C++. We can also use some more obscure or less well known programming languages such as Common Lisp or Prolog for Artificial Intelligence applications.
Different situations require different technologies, but how your project is structured and managed is equally important and we have that experience. What is right for your project will depend on numerous factors. Our expertise is to properly consider the options and help you through the process.