Software is an unusual commodity. It’s strings of commands and ideas that become concrete outputs to make our lives easier. Software probably touches your life in multiple ways every day whether you’re aware of it or not. If you’re reading this blog, actually, you’re using software. If you drank coffee this morning, you probably used a coffee maker that was designed using software. Or if you ordered via the Starbucks® app, you definitely used software.
Companies often buy software to help their processes run more smoothly. Customer management, payroll, scheduling—all of these processes and many more are improved through software. Some companies buy software “off the shelf.” That means someone (or multiple someones) wrote software that does something useful and packaged it up to sell to multiple companies to use however they want.
It’s a great idea—for companies whose needs fit the purpose of the software. But what if the software doesn’t do what your company needs it to do? What if it does some of the things, but one vital piece of functionality is missing? What if you can’t find anything on the shelf that will do what your company needs it to do?
You could settle. But that won’t really help your company. Then you’ve spent all that money without any real improvement to show for it. You could pay to have the off the shelf software altered to fit your needs. That’s a viable option. But you already paid for the software—and now you have to fix it, too? Not ideal.
What about custom software? What if you could sit down and tell someone exactly what you need software to do for your company, and then they built it for you? Now there’s an idea.
It’s a very different process to develop custom software. You’re not hunting for the software that most closely addresses your problem. You’re identifying your problem—minutely—and then creating a software that will address it comprehensively.
That’s no easy task—creating something from scratch never is. Which is why many people hear “custom” and immediately see dollar signs. You might be wondering if custom software is even an option for you. It is, and here’s why: EduSource is different.
At EduSource, we like to compare building software to building a custom home (it’s a little easier to communicate in terms of plumbing and doorways than it is to talk about SPROCs and queries). When you decide to build a custom home, you pay an architect to put the plan together. She’s very skilled and she probably charges a lot of money an hour. But it’s worth the expense to get the plan right up front. Then you pay a builder to take the plan and make it real. The builder is probably working on three or four different houses at once, and he hires subcontractors to do the actual work of building while he oversees the construction of all the projects.
That’s what we do at EduSource. We have senior-level software engineers who architect projects and oversee them. But there is a lot of actual computer coding that they don’t do. That’s because it’s work that doesn’t need their expertise. So who are our subcontractors? We call them apprentices.
We hire computer science students during their sophomore through senior years of college to work with us on software development. We call it an apprenticeship because they’re working directly with our senior and mid-level software developers, learning as they work. They get individualized coaching and attention, and are able to experience a real work environment working on real-life projects. It’s a benefit to them, and it’s a benefit to you. By hiring apprentices to do the less-complicated coding work on your project and keeping the high-cost senior level employees working on the more highly complicated aspects, you’ll see a 25% savings on your software’s price tag. It’s all about giving the right people the right work, and it benefits everyone.
So here you are. You’ve decided custom software is the right choice for your company, and you’ve come to EduSource because this unique model is something you want to benefit from. How do we do this software development thing?
If you were building a home, this is the phase where you sit down with an architect and you plan the whole project. You put in the windows, move doorways, and add on rooms. By the time you’re done, the whole house is there in front of you and you can visualize what it will be like when it’s done.
It’s the same with us. You sit down with our Business Analyst and Project Manager and figure out exactly what software elements you need to improve your business and make it run as smoothly as possible. Then we take all that information and put together the blue print of your software. We’ll bring it back to you and talk about what needs to be changed, added, or taken out. Then we’ll bring the final mock-ups for your approval before we start developing the project.
We like to do this up front for the same reason an architect draws plans before the builder starts building. You want to know where the plumbing is going before the drywall is up. We need to know what elements need to be included in software up front so we make sure all the back-end items are included. If we have to go back at the end of the project and add something in, it’s similar to moving a sink to the opposite wall—major plumbing overhauls aren’t cheap later in the game.
This is the fun part. You get to see the walls go up. All the planning and pictures become reality. Our Project Manager takes those plans you approved to our senior developers. Our developers in turn task out the assignments in small chunks that apprentices and mid-level developers will work on. And then they start developing. Sometimes you can see a lot of progress—your client management system is in place! Your data entry page is up and running! And other times a week or more will go by and you don’t see anything new happening. That’s when all the back-end work is being done. Think about the pipes and insulation that have to be put in the walls so that the nice shower head gives water when you want it.
During this time we like to meet with you every two weeks to make sure you’re aware of what’s happening and we can catch any changes that still need to be made as soon as possible (again with moving the plumbing—we’d rather do it now than at the end!) During the development, we also have an internal accountability process to keep us on track with the project. It’s called Daily Layered Accountability (DLA). We check in every morning with the whole team to assess where we are, where we’re going, and how we’re going to get there on time. We’ll keep you in the loop on how those goals are looking. We want to be on time always, but we know we’re human and technology is notoriously prone to difficulties. DLA alerts us to any points where the project may get slowed up, and gives us an opportunity to make sure we get back on track.
We’ve been through this whole process together. We’ve dreamed, planned, and worked for this. And now it’s time to give you the keys to your new home, ahem, software. But we won’t hand you the keys and run. We want to make sure you know how everything works. We’ll make sure you have the software where you need it. Do you need help integrating it with your current business practices? We can help you with a rollout plan. And if you run into problems (something breaks), you have a 30-day warranty period and we’ll fix it for you.
At this point, you have exactly the software you need to make your business run smoothly—software that meets your unique needs and caters to your business model. Through the personalized planning process, you figured out exactly what type of software solutions you needed. Through the development, we built programs that met those needs exactly. Now here we are. We’ve taken abstract ideas and complicated problems and created effective solutions. That’s the beauty of custom software.
Does your company need custom software? Are you interested in what EduSource can do for you? Visit our website for more information.
Are you intrigued by our apprentice program? Visit this blog to learn more!