QNIUM was contracted to transition a web-based e-learning application into a desktop app.
QNIUM was commended for their open-minded approach to projects and willingness to try anything possible to quickly solve issues as they come up.
"Whenever there's a problem, QNIUM will do everything within their power to figure it out."
Introduce your business and what you do there.
We are an educational software that is attempting to make a productivity/note-taking app for students. I am largely the product manager. I mostly work directly with QNIUM in overseeing that they understand their tasks and do quality assurance.
What challenge were you trying to address with QNIUM?
We were just looking for an affordable, good-working team that we could reach out to on a semi-irregular basis because we are self-funded, so funding kind of fluctuates. Depending on time and money, we do or do not have so much that we can afford to ask, so we were looking for flexibility. Also, originally, when we first contacted them, our software was entirely web-based, so we were looking to transition that to desktop. What we have is a kind of patchwork of multiple plugins and services. We were trying to take this patchwork software and strengthen the foundation by making it a little more complete and have the inner workings run together a lot more smoothly. So we needed to work on mostly everything.
What was the scope of their involvement?
Actually, we're getting really close to launching our desktop application. Originally, we were web-based, so we started out just with smaller web-based projects which they helped us support across many browsers. We supported way too many browsers. With their help, we cleaned up everything for Safari, Firefox, and Chrome, instead of stopping at just one browser and having to charge our clients for fixing it if they have a problem.
We were a web-based software, so they helped us transition to desktop, and also gave us offline support and file synchronization. Basically, you could log in on your desktop software, then you could create a bunch of notes and edit things, and you could check it on the web version in the cloud. Everything would translate, and you could move back and forth that way.
It was a really huge undertaking. They did a great job walking us through. They made sure we had a very clear understanding of all the avenues that we had whenever something unexpected came up.
We used Node.js as a desktop wrapper around our editor - which is a modified version of CKEditor. The PDF framework that we used for supporting PDF is PDF.js. Those were the largest frameworks. They also worked a lot with the cURLAPIs to help us with the synchronization. Our database was MongoDB.
How did you come to work with QNIUM?
I've been a project manager for about three years now, so I've been on both client and team sides. I’ve only been working here for about a year and a half. I pretty much knew, but after talking with my partner and discussing what the long-term strategy was, when I had those features nailed down, it would only be a matter of deciding which frameworks we would be working with.
The things that we knew that weren't going to change, were CKEditor and Chrome support. Other than that, we were pretty flexible. What I was really looking for when I was interviewing teams was their strategies and recommendations to approach this project, and the depth of their answers.
The price was also a factor. We used to work with various individual freelancers in America, but we found that even though they were really good and they were really talented people, the time difference was getting to be a considerable factor because the East Coast is six hours behind us. Since we were planning to shift to a more traditional desktop application, it made more sense to have a full team instead of one person working on the frontend, one person working on the backend, and one person working on the graphic design, which is roughly what we were doing before. It makes a lot more sense from a management, but also from a productivity standpoint to have a whole team sitting in one room.
To me, it was not as important what frameworks or programming languages they had experience with, because, when it comes to development, it's how they approach solving a problem. They do their research, and depending on how big the problem is, they come back with options, we all discuss, and then pick a direction. This way of approaching problems makes the most sense to me and is the most cost-effective as well.
How much have you invested with QNIUM?
We're reaching about the $10,000 mark.
What is the status of this engagement?
We started in February. They give us their hourly/daily rates up front, and for roughly €1,000 per month, we’d give them our wish list - of course, half of it could not be done - but we’d then pair down to our most cost-effective essentials. Given how many different pieces of our software need to interact with each other, it leads to a lot of unusual complications that are very much unique to us, which a lot of other companies I have worked for would not have experienced working completely under one umbrella platform.
Could you share any evidence that would demonstrate the productivity, quality of work, or the impact of the engagement?
Unfortunately, it is a little bit difficult to measure impact because we already had the product up and running. It had been up for about six months. I guess I could follow up once we launch the desktop to see how many people prefer it. But otherwise, aside from just making sure it didn’t crash nearly as much as it once did, not a lot changed on the user side.
How did QNIUM perform from a project management standpoint?
The offline synchronization turned out to be a much, much bigger project than we anticipated. There were definitely some instances where they had no idea about the outcome, and admitted that they would need an extra couple of weeks to get it done, assuming nothing went wrong, which always does.
QNIUM never nitpicks, and always listen when you want to keep talking to them after their working hours. They always tried to make sure we understood all the variables that were involved, the things that we could do to help, and the things that they needed to get done.
A lot of scheduling problems has been just the normal startup insanity, where lack of funding on some days collided with an unexpected development thing, so it would have to be put on hold and things slowed down. Node.js is also a relatively new framework, so sometimes we have to reach out to those guys and wait for them to come back.
We've had a couple emergencies ourselves that weren't even caused by QNIUM. We had this horrible, horrible server based out of France. It sometimes would just randomly go down, but I knew we could ping them and they would always have it up within an hour. And they never were like, "Well, we're going to charge you for this, and these hours were worked outside of normal ones so..." or anything like that. We paid them anyway, but we could always count on them to come to our rescue.
What did you find more impressive about QNIUM?
I think they price themselves fairly. I feel I can ping them whenever there’s an emergency. And again, they make sure that they explain all the options to us. That, to me, is the most important part of any team. It’s what I personally want out of working with anybody. They are the kind of developers that are always ready to give our requests a try.
Whenever there's a problem, QNIUM will do everything within their power to figure it out. Granted, it might be way outside your budget and they will make sure you understand that, but they're the kind of developers that never say no. The closest they get to saying no is, "We have to rewrite half the code." That's the most reasonable, and the best kind of developers that you can ask for.
Are there any areas QNIUM could improve?
I really can't think of anything. The offline synchronization definitely set us back a lot further than we wanted to be set back, but it is what it is. They have gone above and beyond to make sure that we have been assisted in any way that we can and to compensate for any time that we have been lost in whatever way that we can. Even though we're a couple months behind, and that definitely hurt as a start-up, in return they made sure that we could distribute – originally we were just going to be distributing to the Mac App Store and the Windows store, but now they basically built us installers so that we can distribute anywhere. We have two extra operating systems that we can distribute on as well. I feel that's perfectly fair.