Software development

SQA Consulting is a Microsoft Gold Partner that designs, builds and delivers solutions for clients across a wide range of sectors including retail, commercial and investment banking;  IT and telecomms; utilities; government departments; legal; and, healthcare &  life sciences. We work at all levels of implementation including enterprise, distributed, web-based, desktop, and mobile applications.  Our technical expertise is broad and deep, and includes teh major Microsoft platorms such as .NET; SharePoint; Dynamics CRM & AX; Azure and SQL Server.

We are primarily a Microsoft solutions organisation with strong experience in leveraging the Windows operating system, Microsoft Azure platform, Microsoft Visual Studio, and cloud-based and web-based business models.  We deliver solutions that integrate seamlessly with current IT infrastructures, including Microsoft technologies such as Exchange, Office, and SharePoint.  We integrate applications using Microsoft BizTalk Server, Microsoft Azure Service Bus, Microsoft SQL Server, and Microsoft .NET.  An important aspect of many of our solutions is business intelligence; i.e. the ability to satisfy all requirements for business reporting and analysis.

We put great emphasis on excellence in technical design.  Our designs are elegant, powerful, flexible and most of all maintainable.  We believe that only good things can come from making the extra effort to produce a truly excellent design.  We only write code of the highest quality.  Our code must be elegant and easy to understand and thus can be supported and maintained by our clients.

We are experienced and expert in a wide range of methods for systems development and are happy to advise clients on their options.  Though much of our work is done using short-iteration agile methods such as Scrum (and on occasion DSDM and XP), we have lots of experience in sequential methods such as v-model and waterfall.  We are also happy to use our clients own in-house approaches and can help to develop those on request.

We use a combined onshore / nearshore / offshore model, thus ensuring that clients gain access to the highest quality resource as well as getting maximum value for money.  Our nearshore resources are based in Eastern Europe, while our offshore resources are based in Vietnam.  The choice of who does what where is driven mainly by client preference and the particular requirements of individual engagements.

Using Microsoft .NET almost exclusively, we practice model driven development (UML modelling), use MS Test for unit teasing, and achieve continuous integration using Microsoft Team Foundation Server.  For enterprise applications we use Windows Communication Foundation; SOA; Windows Workflow Foundation; Microsoft Enterprise Library; Windows Services; Microsoft Cluster Services (MSCS); Component Load Balancing (CLB); and, Microsoft Network Load Balancing Services (NLB).  For distributed applications we are expert in Microsoft Azure Cloud Applications; Distributed Transactions; Web Services; Web Service Extensions; SOAP customisation; XSD Usage; ADFS security; Biztalk; and, MSMQ.  For web-based applications we use ASP.NET; Third Party Controls; Custom Controls; AJAX; JQuery; XML / XSLT; ASP.NET MVC; HTML 5; Microsoft SharePoint and, Windows Sharepoint Services & Entreprise Search.  For desktop applications we use Windows Presentation Foundation; WinForms; Smart Clients; Composite Application Blocks; Smart Client Software Factory and Windows Universal Applications.  For mobile applications we use Windows Phone; Compact Framework; Web services collaboration; and, SQL Server CE.  For data access, management, reporting and analysis we use RDBMS; ORM (LINQ, Entity Framework); ADO.NET; MSSQL Server Integration Services; OLTP; OLAP; Power BI ; and, Multi-dimensional data processing.

We never forget that we are building business-critical live production systems that are essential to the success of our clients and their clients.  Many of those systems are running services in heavily regulated markets.  Everything we build is intuitive to use and support; reliable; scalable; performant; flexible; and, secure.  We avoid having a blinkered focus on functionality and forgetting about all the other things that matter in production systems.  We build systems that our clients can support themselves with ease, rather than always having to call on us (though we also provide application lifecycle management services to many of our clients).  We have a great deal of experience in ensuring that performance is designed into our solutions rather than it becoming a post-hoc search for bottlenecks and optimisation opportunities.  That experience includes defining performance acceptance criteria; capacity planning; ensuring scalability in the design; production simulation; baseline, load, endurance, stress, and spike testing; and, using realistic environments, conditions and data during testing.