A story of a project: 3600 users to G Suite in 60 days! – Day 3: More manual work!
So we ended the previous day with a lot of things done, in fact the day ended while we still had a lot on our list of unfinished work, so we were all eager to start the next day to finish the pending work.
In this day, we had to complete the user sync setup between active directory and Google. Before going into the details about this, I need to explain how we ended up dividing users to groups and the criteria we categorized users on.
Looking at the customer’s total data sizes, it was about 31TB of email messages. Of this 31TB there were 14TB used by about 450 users only. Those users started from 20GB per-mailbox up to 50GB… The remaining 17TB was distributed among the remaining 3000 users.
Because we had very little time, we thought that 45% of data can be done easy enough if we manage to migrate the 450 users quickly… Then we will work our way through the remaining users. Also, we wanted the IT users to be ready as quick as possible, because they need to worry about the end users rather than themselves, and we had to take care of their data migration for them and to make sure they are well prepared and trained to deal with end users and with the technical issues that will arise later on… So we ended up with 4 groups of users actually:
- Normal users who had less than 20GB of mailbox size.
- Large users who had 20GB+ of mailbox size.
- IT users who have various mailbox sizes, but we did not care about the sizes for them.
- The group of “VIPs” and CxOs. and other “important” persons…
Considering the previous day we had to exclude a good number of users, it was obvious when we started working on the grouping of users that we will get excluded users in the IT users and the VIPs group, so we put those users on a list, and used the magic of GAM to manually creating those few users who were among the excluded group. After that, we also used GAM to assign business licenses to all users who belong to the 3 groups if we exclude the normal users. they were about 50 users…
Of course our work is not finished yet.. We had a hero guy who accepted (not exactly was his choice though…) the task of manually creating exception for each of those 50 users on GCDS so they don’t get deleted once the sync command is triggered.
Lucky for us we did not get external disturbance from other teams, and we manage to do the work just right, it took most of the day for us but we finished with some energy left in us…
For some mysterious reason as well, nobody even me mentioned or spoke about documenting today’s work on the GCDS tool, combined with the previous day’s miss, there was something being cooked for us by the forces of evil…
With the time left, we setup a new subdomain, we called it the forwarding domain, which we added and verified on Google. This sub-domain will be used for the dual delivery and coexistence setup after few minutes.
Once we made sure the domain was active, we then ran a PowerShell scrip that will create mail-contact objects on Office365 for every user who now has an account on G Suite. The external email address for the contact object has the domain part replaced with the forwarding domain, while keeping the alias exactly similar to the real email address. We planned to run the next script which forwards each email to its corresponding mail-contact, but we ran out of time for this day.
So we left while the first script was running. It will take to the next day to finish though.
My notes and lessons learned
It was very important for us to start the day while we knew what do to… We had a lot going on, and with the surprise of the shortage on licenses the previous day, we had to make sure that our priorities are not changed. We wanted to cover 3 groups of users as early as possible. The IT users, VIPs, and anyone who had 20GB+ of data… So we did all the setup based on this objective.
By the end of the day, we were way out of the default and intended configuration for the GCDS tool. We had a lot of manually created rules and exceptions, this is not ideal, however we were forced to do that, referencing to my notes in the previous post, we really should have documented what we were doing, but we did not! I find no justification, or explanation for that, it was unprofessional and we all should be sad about this, but it went away. It is good to mention though that the settings we did were all reversible and can be changed at anytime to become the original intended setup…
It is important also to build trust and good feelings with the team members… Considering my role and expertise in G Suite I was leading the teams, and making sure our setup is compliant with the support team’s requirements, while at the same time making sure the support team does not go way off to what we cannot do in terms of configuration and backbone configuration level… So I was able to get to relaxation mode with the other team members, making sure to let them feel I was just doing my job and the best for the project. I was sharing every related knowledge to the work at hand with them, this will help me greatly later on upon the handover of the project…
At the end, a project manager and project management is not only about resources. Humans and team members ARE resources, but they are also HUMAN BEINGS, so it is important to keep this in mind with every dealing with a team member to make sure we get the best outcome of any person involved in the project. The guy who created 50 manual exception rules was happy while doing that, he took that stupid primitive task and did not object at all, because he knew that we all were depending on his work and the result that he will deliver at the end, we helped him the best we can while each of us still did his assigned work, and he was able to deliver the good result at the end.