Why should you have a mobile-first workforce?

In the last several months, many organizations have shut down, at a minimum, significantly slowed down due to the COVID-19 pandemic. The pandemic placed a strain on many industries, even the sectors that are essential. The company I work for is in the construction industry. We are lucky enough to be able to continue our work during a pandemic, as electricity is crucial to our nation to continue operating.

However, I am by no means an electrician. I hardly trust myself replacing a light switch or outlet in my own home. How could I continue working when I do not perform the essential work? Additionally, I have complex health conditions that make the COVID-19 pandemic significantly more dangerous for me. 

Well, I am lucky to have worked in technology my entire professional career, with a fair amount of travel for work. I am very comfortable working outside of a typical office setting. Comfort in your work environment is critical for productivity. If there are too many distractions, uncomfortable seating, poor lighting, all of these can drastically affect your productiveness. These are all things as an employer you cannot control; however, you can educate your employees on how to establish an ideal work environment at home. 

Tracking and Automating Business Processes

As businesses grow, it becomes challenging to keep up with business processes. To keep up with a constant flow of tasks associated with these processes, you need to track them, especially when multiple people are involved with the process. Business processes become difficult when you have to enter data into multiple systems. Entering the same data multiple times increases the risk of human error each time data gets entered.

In recent months I’ve been tasked with helping different business units improve and track their processes. Specifically, I started with our onboarding experience. The process tasks get assigned to people that are geographically dispersed, and sometimes the people involved with the onboarding only do a few a month. There is a lot that needs to go into it. You want to factor in things such as IT, Payroll, Equipment, Licensing, Training, which makes it keeping everyone in the loop difficult.

To combat these difficulties we settled on a product called TallyFy. TallyFy gives us a dashboard that will show us how our processes are progressing. It helps keep everyone on the same page and helps communicate issues in a more rapid manner.

Our hurdle with TallyFy was that it was tacking yet another system into our onboarding experience. We already had three different systems involved in someone applying for a job to ultimately receiving their first paycheck. Having multiple systems caused data re-entry, which is prone to typos. To combat the data re-entry, we needed to integrate our different systems. As previously blogged about I wrote a PowerShell Module to interact with the BirdDog HR system; we use this to send our new hires their employee packet to fill out before day one. This PowerShell Module I was able to query new in-coming employees – my next task was to integrate it with TallyFy so that it would track the progress of the onboarding.

Luckily for me, TallyFy has done a fantastic job writing an API that their web interface runs on, and I can do everything they can do. One of the challenges with this is that their API is very complicated. I’ve been lucky enough to work closely with their team to build out this PowerShell Module that only touches on a small fraction of what is available thought their API.

PowerShell Module Git Repository:

I am storing this Module on my personal Git Repository; as it is built out more I might publish into the PowerShell Gallery. You can find the Module at TallyFy API PowerShell Module.

Store the psd1 and psm1 files in Documents\WindowsPowerShell\Modules\TallyFy.

Connecting to TallyFy API

  1. Login to https://go.tallyfy.com
  2. Click on your name in the Top Right corner of site
  3. Click Settings
  4. Click Integrations
  5. Note your Client ID and Client Secret
  6. Open PowerShell and run the below command
  7. Connect-TallyFyAPI -ClientID 'Your client ID' -ClientSecret 'Your Client Secret' -Credential (Get-Credential) 
  8. Use your TallyFy Username and Password when prompted

Feel free to explore the other commands by running the below command.

Get-Help -Module TallyFy

Centralizing Your Chat Clients – Including Multiple Microsoft Teams Accounts!

I ran into a scenario where I wanted to use Microsoft Teams more. I am one of those odd people who have accounts in multiple Office 365 organizations. Having multiple accounts was no issue for me when I used Slack; I am still in a few of those too! Oh yea, don’t forget Telegram and Discord and Whatsapp and the million other chat apps that different groups of friends think you should be using!

While digging into how to address the significant lack of functionality in Microsoft Teams to log into multiple accounts, I made sure to log into the Microsoft Teams UserVoice and vote to add this functionality! I stumbled across a comment by Jeff Angama. He had written a blog post about a neat tool called Franz. This tool integrates 50+ chat and other social media services into a single application that synchronizes across multiple devices. The best part is that you can get this functionality completely free. Still, I strongly recommend you pay for the premium version to at least support development efforts!

Using PowerShell with RESTful API’s – BirdDogHR API Module

In the last few months at work, we have been concentrating on integrating different cloud-hosted systems with our on-premise systems. Integration usually means using some ETL Tool to interact with an API, and either use an API with the on-premise application or dumping directly into a Database.

We decided to start automating our Onboarding Processes. The hurdle came up that the ETL Tool isn’t going to trigger Account Creation and other IT related actions. My logical thought was I can interact with an API using PowerShell! I had done this a little bit in the past but nothing significant – so I had a bit of learning to do!

Life Update

This blog has been quite dead for a while now. Never fear I am still around! Life has been busy, work has been busy, and I took a step back from being on the computer 24×7.

I took a new job back in 2015, which lead me to believe I would have tons of free time – not the case, but not exactly a bad thing. Being out of consulting did free up a lot of my schedule and let me focus more on my social life and personal health. In-fact after settling into my new job (About 6 months!), I decided to put a significant focus on my weight. I had gotten up to 245-250 lbs. I had low energy, it was tough for me to do anything due to weight in combination with my Muscular Dystrophy and enough was enough. I started exercising using a manual chair around the house in late January of 2016 – I took a serious focus on my diet in early March of 2016. I am happy to say I am down to 185 lbs. Since December of last year, I have had a hard time losing weight, and I am going to be putting a big focus into dropping another 20 lbs.

Now that my health is in better shape, I am spending tons of time with friends and exercising semi-regularly. With the weight loss, I am not having nearly as much of an issue with my muscle weakness from my Muscular Dystrophy. I am even walking around the house/neighborhood and shopping some!

Last time I tried kick-starting this blog was with the HoloLens – it was a fun experience. Still, it quickly died off due to the learning curve to get into programming and trying to balance my health, social & work life. Keep in mind that this blog is entirely outside of my work life and tends to consume other parts of life so that I can dedicate some time to it.

I am not going to commit to regular updates on this blog. I do have some stuff I’ve been working on recently that I am going to be posting in the coming weeks. So please keep tuned to this blog!