Software Developer/Architect

Saravanan Subramanian


My hobbies include tennis, weight training, photography and reading although these hobbies have gradually taken a back seat due to work, family and other personal commitments lately. I also try to pen my thoughts occasionally here on a number of topics that interest me which include software development/architecture as well as history, science, mathematics, linguistics and travel. I am also hoping to revamp this old website site as well as complete an e-Book (on HL7, DICOM and PDF programming) and release it at some point in the future.

Hello, Visitor. My name is Saravanan Subramanian (சரவணன் சுப்பிரமணியன்), an old Tamil name that is pronounced “seruh-va-nun sue-bruh-money-yen”). I live in Saskatchewan, Canada and currently work as a Senior Solution Architect at a reputable firm where I help design, develop, enhance and deploy mission critical web, middle tier as well as ETL applications using a number of object-oriented tools and technologies.

I am very passionate about software development, and am thrilled to be involved in a field that is having a profound impact on the very nature of humanity in terms of changing as well as accelerating how humans learn, use and share knowledge with each other as part of the numerous commercial and non-commercial activities that we all collectively engage in every day.

Over the last 20 years, I have helped my clients and employers conceptualize, design, develop and implement ideas/products that are enabled by information technology quickly and in a cost affordable manner using both commercial as well as open source solutions.

Technologies and standards that I am most comfortable with include Java, .NET, XML, Javascript, PDF, DICOM, HL7, Public Key Cryptography, Adobe LiveCycle, Mirth Connect, Oracle and SQL Server. If you need reach me, please send me an email.

"Responsible (software) development is the style of development I aspire to now. It can be summarized by answering the question, How would I develop if it were my money? I’m amazed how many theoretical arguments evaporate when faced with this question."  ~ Kent Beck


I decided to write an introductory tutorial on the DICOM standard as there were not many articles on the Internet that singularly cover all aspects of this very large standard through an example based approach which helps the learner relate to the underlying concepts quickly by means of association. Many people I know who work with DICOM on a daily basis often deal only with a few aspects of this vast standard. Read more...


Seeing the many challenges in the field in terms of adopting unit tests, I am totally convinced that a basic awareness needs to exist of the inner workings of unit testing even for the non-programmer who works closely with software delivery teams to ensure that teams use unit testing to help produce high quality software that is easy to enhance or modify. This article explains the fundamentals of unit testing as well as how to adopt unit testing within your organization. Read more...


Before we get started on this tutorial, have a quick look at my earlier article titled “A Very Short Introduction to the HL7 2.x Standard” for information on the HL7 standard. Please note that this tutorial assumes you know Java or any equivalent object-oriented language. A basic understanding of network as well as thread programming is also useful, but not necessary. Building custom Read more...


One of the frequent challenges specially in document centric organizations where production of documents is often highly automated is to ensure that these documents are correct both structurally and semantically before they are transmitted both for internal and external consumption by other Read more...

Some of My Articles


Favourite Quote...