1 Nov 2017
Adding more field-based autonomy to the app
in Technical Blog by Kae Verens
Generally, the way that service management software works is that you have an office-based staff which handles the apportioning of the jobs, and the field workers go out and handle those jobs. In some of our clients' cases, they like to do it all out on-location. This involves bringing a laptop, because the CRM part of our system can be too large and complicated to work with on a phone. Last week, we added the ability to put stock items directly into form subtables, so you could say where exactly the stock was used, instead of attaching it generally to the job itself. This week, we did the same for the schedule of rates. We think this is leading in a "bottom up" way towards being able to quote and order a job completely from the field on a phone. We just need to make sure this all links into the financial database parts of the system properly, and then we'll be happy to call that a complete feature. A step beyond that would then to be able to send an invoice directly from the app and have the client pay it via a payment system such as Paypal or Stripe. One of our juniors is currently looking into that at the moment, but I would not expect it to become an actual thing until early next year. This is all leading towards being able to administer a large part of the system as a paperless office solution from the field itself, so the workflow management system handles as much as possible automatically, there is very little to do manually, and that little can be handled on your tablet or phone. We already have at least one company where all jobs and customers are created by a team lead who is out in the field himself. He creates the jobs and customers on the field worker software in his phone, then he reassigns the jobs to specific members of his team. It's not a big step to prefix all of that with quote generation, where the quote can create an invoice through Paypal/Stripe, and a job is then created from the quote, either manually (where you get the go-ahead and want to just start working), or after payment (one of our clients would like to get paid before doing the work). It's all interesting work. We enjoy throwing new features in, then seeing how our users find ways to make use of them. The aim is to make FieldMotion into simple workflow software that has as much automated away as possible so you only need to use a minimal interface (like on a phone). This ability to flexibly add new small features that may not have been part of the "grand plan" years go, without needing to rebuild from scratch, is part of the reason FieldMotion is the best workflow management software. When adding new bits and pieces, we always try to think of how this might need to change in the future. For example, we mention PayPal and Stripe, to make sure that when we write that bit, we don't just hard-code a single solution in and make it difficult to stretch it later. We intentionally try to make the code accommodate much more than it currently can, so we can easily add new features later on that we haven't thought of already. In a way, it's a living version of Donald Knuth's famous saying "premature optimisation is the root of all evil". If you write your software as if the plan the bosses came up with years ago is the absolute correct and only way the software should run, then you risk making it impossible to change later when it becomes obvious there are new features needed. We originally planned the system so that jobs are created in the office, and the app is just for filling in the forms. But, we wrote the code such that this was not set in stone. In fact, this flexible approach is the very reason FieldMotion exists at all in the first place. When I was hired to make the first version of the system, there were 2 or 3 specific forms for mobile devices that needed to be filled by the mobile workers. I could have just hard-coded those forms and then gone onto my next job. Instead, I made it possible to customise and create your own forms, and FieldMotion was born. We are now the best field service management software in the UK, and working on being the best in the world.