Agile software development
Tell us when you need softwares to be developed
Nonagon offers custom software development services to companies seeking for new-age software solutions. Our system engineers and developers collaborate with customers to design applications tailored to the subtleties and nuances of the organization and its culture. We can help you re-engineer your business processes to leverage the capabilities of next-generation software technologies for true business process improvements.
Our project managers go through an extensive process of getting to know your business and your industry, your work flow, the unique challenges you face, management objectives, worker concerns and your existing IT infrastructure to better assess application requirements and specifications.
We also provide roll-out support services, including end-user training, help-desk staff training and assistance, and custom user guides.
Desktop Applications Development
What is a Desktop Application?
The Desktop Application in our meaning is the application software that is running on desktop computer / laptop. It can be the native application running on specific operating system, web based application or rich internet application (RIA) .
This kind of application usually need to support heavy usage, fast data-entry, flexible reports and friendly user experience. The desktop applications developed by us do not just meet all of those requirements but also light-weight, well-tested, fast-responding and having nice and cool user interface.
We also have our own powerful logging system which will help us doing maintenance support your application usage experiences much more faster and effectively.
We are able to develop desktop application on various platforms including Windows, Mac, Linux and Web using most recent technologies.
Mobile Applications Development
Today application software are not limited it self on desktop computer or laptop anymore. People who do not have high computing skills are now able to use any application from smart phones and tablet. With touch screen, nice icons and onscreen keyboard, everything look easy!
But in technical, mobile application is definitely different. It has limited resources, battery and cellular-data usage. Without these awareness, your application will continue draining battery and no one will use it.
Mobile and tablet applications should consume less resources and battery while still be able to work perfectly. If working with public data network, it should also not generate unnecessary data transfer request. It should also need to be able to resume to current state correctly when get interrupted by other higher priority applications (like phone call) or after being in stand by mode.
We always keep this awareness as highest priority together with the great user experience during design and development.
We are able to develop mobile applications on various platforms including iOS (iPhone, iPad), Android, Windows Phone and BlackBerry.
People use web search engine for everything they want to find out. So website is most likely the first thing they will see and get to know your business. And with the age of mobile, people can easily reach to any website from every where at any time using smart phone and tablet.
We are not just creating a beautiful website. But we also make sure it is accessible from mobile devices. With responsive design pattern, you can have beautiful website that is readable from everywhere.
We also make sure your website content will be able to discovered by search engine. So it supports further search engine optimization (SEO) process.
The website security is also what people forget to think about until someone else mess it up. We are considering the security as the high priority. Every website developed by us will get details security scan before approved to be released.
With our long experience of website development, we are able to develop any kinds of website. Including company website, e-commerce, e-learning, online services, local intranet sites, etc.
Cloud Applications Development
The online-applications or website are not only accessible from desktop computers. A lot of people also use smart phones and tablet to access to your online resources. So the number of concurrent users can be definitely higher at any time when your resources are highly demanded.
If you are planing to have a large-scale and high concurrency online service, the cloud computing technology is what you should consider. You can start running your service in low cost and pay it as your service grow up with many people using it.
To be on the cloud, your application has to be scalable or it would not work effectively. And to support high concurrency, your application need to manage resources very well. You cannot have any slow process to consume any of the shared resources. Otherwise, you will waste the cloud computing unit for unnecessary reason.
We are experienced in developing successful cloud applications. We always considering the best practices to design and develop your system to meet everything required and recommended. Your applications will still run smoothly over million users.
Systems Architecture Design and Development
The smooth system usually comes from the clean architecture. Because there are always the change of requirements, the core system should flexible enough to support those changes. Mistaken changing of one thing may cause unexpected problems for other things else especially when the system get more complex with many modules integrated.
With our extensible system design approaches, all modules affected by the change of requirement will be simply exposed. So any kind of changes will be on track without unknown side-effect.
We also keep all modules small and make it as loosely coupling as possible. To keep the system away from dependency chain side-effects when there are any unexpected changes in the future which is usually costly maintenance.
In long term, the maintenance would be more simpler. Your system will be solid and extensible without redoing the core architecture.