PMP for under $900

a cost effective way to prepare for and get your PMP certification

PMP certification

Optimize ROI

Given you have necessary experience, Project Management Institute’s PMP exam also requires you to obtain 35 hours of project management education. While that does not seem like much, project management courses to earn those required hours usually cost over a thousand dollars at traditional educational institutions. Since it is the experience that makes PMP holders stand out from the crowd, I suggest using simple online courses and material to get your PMP in the most cost effective way available. In the end, you will get the same result with the least investment.

Online courses

Simplilearn offers self-learning course with required 35 hours of project management education for $199. In addition, Simplilearn offers 5 PMP simulation exams for $15. Take those as well. PMP exam questions often include real-life project situations, and doing as many practice questions as possible will help you get the feel for what to expect from the exam and train your brain to automatically filter out incorrect answers.

Other studying materials

Simplilearn courses and Project Management Institute’s body of knowledge will probably not be enough to adequately prepare for the PMP exam. For detailed explanation of PMP material and exercises which will help you prepare, I recommend buying excellent Rita Mulcahy’s PMP Exam Prep book which costs between $60-$80 on Amazon.

PMI membership first

By registering with Project Management Institute and paying $129 annual fee prior to registering and paying for PMP exam, you save 150 dollars. Discounted exam cost is $405 as opposed to regular cost of $555. As an additional bonus, PMI website has a handy tool for entering and calculating your required experience which can help you determine whether you qualify for the PMP exam and provides Christopher Scordo’s PMP Exam Prep Questions, Answers, & Explanations for free in ereads and reference section.

All-in cost

Given a serious self-studying effort, the above material will prepare you to pass PMP exam just as well, if not better, than any project management course you take at your local college. Your total cost would then be:

For a grand total of 818 dollars. Good luck with your studies!


To Convert or Not

dealing with common issues upgrading clients to the new version of a software product

Time to Upgrade

Why change what works

You upgraded a client’s database to a shiny new SQL server and gave them a superior software product with a sleek modern UI. And yet, you get a call next morning with the client yelling at you to revert back to their old DB3 with DOS-based interface threatening to leave you for your competitor. You reluctantly give in and put them back on the old product. The upgrade is a disaster.

A major software upgrade across the client base is something that most companies eventually have to deal with sooner or later. Handled correctly, new versions of software generally result in streamlined and easier to support products which give greater value to their users. The trick is to make the customer recognize that fact and get their buy-in.

Many conversion and upgrade software and hardware projects could fail even despite the flawless technical execution. Why is that? During the upgrade and conversion process, the people aspect is often overlooked. People are generally resistant to change. So are your clients. If not handled correctly, major changes such as introducing new major versions of business-critical software products could trigger these major resistances and refusals to adopt the new technology.

Techniques described below helped me overcome these resistances and successfully complete a multi-year software conversion project which upgraded business-critical pharmanet software at over 300 hospitals, pharmacies, and medical supply stores.

Early adopters first

Chances are, some of your clients are more technically savvy than others and anticipate getting their hands on your new product as soon as possible. In the beginning, when the upgrade process is still immature, upgrade those clients first. Early adopters will be more willing to learn new software and might be more forgiving of your technical mistakes, such as errors in converting their data to new database.

Offering those clients certain incentives, such as temporarily reducing their monthly fees would compensate for their time should any difficulties occur. Other incentives could include involving those clients in the development process while iterating new releases or giving them extra software features free of charge. In any case, maintaining long-term excellent relationships with your clients is much more important than short-term financial gain.

If you have good relationship with your customers, they might even help cheerleading your new product among their industry connections. Many times during the upgrade project, I have been asked to give contact information for clients who already use the software. Treat early adopters well, and they will be your biggest allies.

Feedback and continuous improvement

Without customer perspective, some subtle aspects of software upgrade will be overlooked, which could negatively affect customer experience. For example, you might not think taking a client system down for an hour during business hours is a big deal, but if they cannot run their business without the software, that hour could result in enormous headaches and a permanent loss of some business for your client. Just think about a pharmacy needing to perform dangerous drug interactions check during a prescription fill when their system is down. Many patients will not wait and might permanently leave to get their prescription fills elsewhere. Thus, to minimize disruptions, the software upgrade might have to be scheduled outside the business hours.

Survey each customer at the end of the conversion process and see what could be improved. Continuously introduce the best suggestions into your upgrade process. The last customers you convert will also be the ones who are most resistant, and you will want to have the process optimized by that point to give yourself the best chance to succeed.

Quality training

While providing training on a new system could be somewhat time consuming and costly, I find that the long-term benefits outweigh the short-term costs. In some cases, one hour of quality training prior to upgrade could save up to five hours of support calls afterwards. For instance, an untrained or poorly trained client who has difficulty adapting to new software might keep calling each time they encounter a new or modified software feature, thus greatly and unnecessarily increasing the amount of back-and-forth communication. More importantly, an untrained customer might grow frustrated with the software due to unfamiliarity with the system, and become less loyal. Planning a training session prior to the conversion with a follow up Q&A would prevent many of the consequent support calls, and eliminate the primary cause of clients’ frustrations.

Technical staff involvement

Quite often, your new software system requires a certain network and hardware configurations which you might not be able to do without your customer organization’s technical staff. These people are crucial to any kind of software or hardware upgrade, and a software project would fail without their buy in. Involving, training, and coaching technical staff would increase chances of successful upgrade. In fact, some of my biggest successes and failures came from dealing with technical staff during software upgrade projects. Below are several pointers I developed which help me effectively work with various technicians:

  1. Organization and early involvement - find out what kind of information technicians need from you. If software upgrade requires specific network and hardware configurations, organize your requirements and communicate those clearly and well in advance of conversion date to give ample time for technicians to perform their work. Also, do not hesitate to suggest and negotiate timelines for deliverables, such as having new computers in place.

  2. Clear division of responsibilities - be very clear what exact services you are going to provide during the upgrade process and outline other party’s responsibilities. Do not be a hero and configure the hardware yourself when you are only supposed to be installing the software: while this action definitely goes as an extra mile for the customer, it also builds unrealistic expectations as you will be held responsible for any future work relating to that hardware configuration. Just leave it to hardware professionals.

  3. Rewards and incentives - in some cases, the software upgrade could involve hardware upgrade as well. If an organization converting to new software is hiring outside hardware or network professionals, chances are those technicians would appreciate your endorsement of their work. Reward technicians’ good work by letting your customer know and recommending them to your other clients who are in need of hardware or network services. Over time, you will build a network of “go to” people who you could rely on.

  4. Coaching - by making myself available to technicians, I was able to develop several effective relationships. Face-to-face meetings are the best, since I find people tend to trust each other more after seeing each other in person. Sit down for coffee and discuss expectations of each other and the above points among other things. Show them your new system and explain the benefits for your mutual client. Emphasize that the success of the software upgrade is also theirs, as well-maintained hardware and network would also increase software performance.

Toxic handling

Even if your users are well-trained, and conversion goes smoothly, you might still get upset customers who simply ‘like’ their old system better. Those cases simply require patience and listening skills. Find out what specifically your client is upset about. Emphasize the improved features of the new software. Ask how they think your product could be improved in the future and write up some user stories. In the end, your client should understand that they are getting greater value from your new product than the old one.


That Elusive Inbox Zero

getting support mailbox to inbox zero while keeping clients happy
- posted on December 20, 2014 by Vsevolod Geraskin in articles about support1 day-to-day1 customers2 task management2

Overloaded Inbox

Neverending flood

If you support a piece of software used by any number of clients, chances are you spend a significant amount of time dealing with various customer requests, the bulk of which come through the email. My current responsibilities include dealing with over 300 organizations which require prompt and helpful email support. Unfortunately, urgent emails often get in the way of non-urgent, but important stuff. Spend too much time mired in day-to-day customer issues, and long-term project deadlines might start to slip. Over the course of many years, I adopted the following common sense practices which helped me minimize the amount of time to get back to that pristine and stress-free inbox zero state while still keeping customers satisfied.

Start on Sunday night

Watching Walking Dead and Game of Thrones is great, but last thing we want is to deal with a hundred emails first thing on Monday morning when we should be planning what we want to achieve during the week instead. Spend an hour the night before though, and, all of a sudden, Mondays do not seem so bad, and we even got an hour to conduct a team meeting. Besides, TV shows are more enjoyable when you know you have less issues to deal with tomorrow.

Moreover, I noticed that sending a client email on Sunday might actually increase the chance of them reading it carefully and not reply instantaneously which often happens during the office hours. Consequently, the inbox count start decreasing, which is exactly what we want to achieve. Less clarifications and back-and-forth means more time saved.

Finally, doing a bit of work on Sunday allows me to hit the ground running on Monday and achieve more stuff during the day. Answering emails is not exciting most of the time and could reduce motivation, so why not do it before going to bed which does not require any motivation. Instead, doing something creative first thing on Monday gives us a motivational boost that could last the whole week. Coming in to the office with all the urgent issues already dealt with allows us to relax and fully focus our creativity on solving challenging problems.

Quick replies first

Out of 100 emails in your inbox, 30 might not need replying to, and 50 could be replied to in under two minutes each. Deal with those first. Psychologically, it is easier to handle 20 emails in the inbox, even if the requests are challenging and require significant time. Besides, those first 50 customers will be happy receiving a prompt reply even if their issues seem insignificant to you.


Some requests, such as price quotations or requests for training could be instantaneously replied with using email templates or predefined answers. However, still take a bit of time to personalize a message at the start, as the customer would definitely appreciate that.


Always be specific and ask for specifics. Rather than clarifying one point at a time, clarify the whole message. Time taken to write out precise and specific email would reduce back-and-forth conversations and save more time in the long run. I find that using bullet form in the email is an excellent way to both clarify points and give instructions.

Organize the client

Sometimes, email about same issues come from two or more different people. Always CC all of the relevant people on your reply. If the solution requires follow-up, specify or ask to designate a single person to deal with the issue. In the long run, you normally develop a relationship with a single person in each customer organization who would be the point of contact for specific issues. Most of the organizations designate a responsible person on their end anyways, but some need a bit of guidance.

If all else fails

If you find yourself going back and forth in the email conversation more than a few times without making a significant progress, then perhaps its time to pick up the phone and call the customer. Oftentimes, it is best to call the customer right away, even if their initial email is unclear. Verbal communication is much faster than written and often deals with the issue right there and then. This premise also holds true in personal life: if we stopped texting and went back to old-fashioned calling each other, we would probably not be buried in our phones as much and found more time for other things.


Excelleris Labdata Client

enabling pharmacists to electronically obtain patient's lab results
- posted on November 12, 2014 by Vsevolod Geraskin in projects about .net6 tls/ssl6 security7 http6

Problem Statement

Pharmacists in British Columbia could use patient’s lab results in order to help make informed decisions on patient’s medications. Excelleris Electronic Medical Record is able to provide patient’s lab data through their secure web system.

Project Description

The lab data client is a secure application written in .NET that retrieves patient’s lab results from Excelleris EMR system. The communication is based on raw HTTPS calls to the Excelleris API and XML HL7 data.

Project Outcomes

The development took a couple of days. The application is currently deployed at the pilot client location.