IoT AUTOMATION ARCHITECT MANAGER
Strategic Technology Planning & Assessment / System Architecture, Design & Development
Enterprise Systems Planning & Integration / R&D & Full Lifecycle Systems Development
An award winning Manager accomplished in leading corporate strategic technology initiatives.
Extensive Fortune 1000, 500, 100, consulting, and small company experience with a focus on aligning technology to cost effectively meet today’s and tomorrow’s needs.
A results-oriented professional with progressive software management experience that directed the Software Development, Architecting, and Operations for the HDS IaaS and SaaS IoT Global Cloud and future versions. Specialized expertise in managing new feature development projects utilizing Agile Frameworks of Scrum, ScrumXP, Kanban, SAFe, and other hybrids. Including the coordination of sustaining bug fixes, processes and methods, software release, scheduling, software quality, and detailed documentation.
· Architected & maintained Hitachi’s first IoT Global IaaS & SaaS Cloud with uptime of >99.9%.
· Significantly reduced labor intensive record keeping by more than 90% by developing a Web application using advanced inventory tracking of entire HDS lab equipment of >$100 million.
· Improved equipment uptime by more than 5% by developing numerous test software and diagnostic packages that ran in the background monitoring equipment health predicting possible failures.
Successfully operated as CEO and President, two software consulting firms, Sysoft, Inc. and Software Decisions, Inc., handling major contracts with IBM, SyQuest Technologies, and many other major companies.
Practicing Agile frameworks for the past 20 years leading and coaching Scrum teams and enterprises to success.
Completed the formalized Scaled Agile Framework (SAFe) Certified Scrum Master training.
Currently studying for the DevOps Certification.
Agile Frameworks and Functions
C, C++, C#, Java, XML, Assembly; Databases MS SQL & Access; Object Oriented Programming, Microsoft Visual Studio .Net, Microsoft Office, Excel, Word, MS Project, MS Visio, Google Docs, MS SQL Server, QualiSystems CloudShell
Budgeting, Forecasting, Effective Risk Assessment, Customer Service, Knowledge of Business Requirements, Training of Team Members, Reviews, Accountability of Team Requirements, Evaluation of how we do it better next time.
Agile, Scrum, Kanban, Lean, SAFe, Waterfall, SDLC, JIRA
System Design & Integration, Data Centers, Infrastructure, Test Engineering, Lab Automation, Layer 1 Net Scout 3912, MRV, Curtiss Wright; Wave2Wave AFM360 Robot, Servers, Fiber Switches, Storage, SAN Fabric, FCoE
Major Accomplishment: See the revolutionary private Global IaaS, SaaS, PaaS Cloud environment I architected, programmed, and maintained with >99.9% up time at Hitachi Data Systems on YouTube @ http://www.youtube.com/watch?v=_3aTNBF_uAU
email me for more information!
Ridgecrest, California 93555, United States
A New Buzz Word with an Old History but an Unknown Insecure Future. Interesting how the industry creates a new acronym called “IoT” for the same thing I have been doing and calling “AoT” (Automation of Things) for the last 20 years. The concept of network smart devices was discussed as early as 1982, with a modified Coke machine at Carnegie Mellon University becoming the first Internet-connected appliance, able to report its inventory and whether newly loaded drinks were cold. Amazing how this new term, “IoT”, is revolutionizing our industry as companies are making the changeover to get a piece of that multi-billion dollar pie. The bad news is that we see layoffs because of the changeover, but the good news is that companies are compensating by filing new “IoT” positions. My biggest concern for this race to automate the World is our poor concern for internet security. We say we care, but look at all of the massive hacking going on and the ease at which it occurs. We had a Dot Com era, but what happened to the “Dot Secure” era?
Even though I love the Agile/Scrum Software Development process, we need to re-examine it since it is quite old and everybody is continuously modifying it to fit their needs. Oh, and it's not a process, it's a "Framework". Our Agile methodologies have been around since the early nineties. Here is a little history as to why we made the initial changeover. In the early 1990s, as PC computing began to proliferate in the enterprise, software development faced a crisis. At the time, it was widely referred to as "the application development crisis," or "application delivery lag." Industry experts estimated that the time between a validated business need and an actual application in production was about three years. (A little exaggeration? Maybe a lot?)
Scrum was based on the concept that for the development of new complex products, the best results occur when small and self-organizing teams are given objectives rather than specific assignments. The team had the freedom to determine the best way of meeting those objectives. Scrum also defined time-boxed iterative development cycles whose goal was to deliver working software. Today, most teams that claim to practice an agile methodology say they are using Scrum. And eventually, we had the Agile Manifesto and its 12 principles of software development at Manifesto for Agile Software Development
Ok, now for a realistic summary. According to the Agile advocates, It’s a win-win solution for everybody, fast turnaround of new features, quick bug fixes, and constant revenue. The major downfall of Scrum is if you don't have a self discipline collaborative Scrum Team, you will fail. Also, two other members, Scrum Master and Product Owner, must do their jobs and maintain a cohesive collaborative team, or you will fail. And a Scrum team is not run by a Program Manager or Project Manager. The Scrum team is self-managing.
Here is a list of some of the modified Agile/Scrum processes that various companies are using.
The list of these modified Agile processes goes on and on, such as Extreme Programming (XP), Feature-driven development (FDD), Adaptive system development (ASD), Dynamic Systems Development Method (DSDM), Lean Software Development (LSD), Kanban, Crystal Clear, Scrum, Agile Modeling (AM), Rational Unified Process (RUP), Lean vs Agile, Test-Driven Development (TDD), Rapid Application Development (RAD), Empirical Control Method, Scaled Agile Framework (SAFe), ScrumXP, Disciplined Agile Delivery (DAD), Large-scale Scrum (LeSS), Nexus (scaled Professional Scrum), Scrum at Scale, Enterprise Scrum, Setchu (Scrum-based lightweight framework), Xscale, Agile path, Holistic Software Development, Capability Maturity Model Integration (CMMI), Microsoft Solutions Framework (MSF), Open Unified Process (OpenUP), Essential Unified Process (EssUP), Agile Unified Process (AUP), and….
I have several websites that I have visited over the years of my professional career. One of my favorites is www.amazon.com where I've spent too much money on technical books. Every new computer science or software programming book that was published I'd examine on Amazon and make a decision to purchase. On average I would spend over $3000.00 a year on computer programming and technical books. Now all my books are on my Kindle where I can hold my entire library of over 2200 technical, fiction, and nonfiction books in one hand.
Another favorite website is www.microsoft.com where I've purchased numerous versions of Visual Studio using C, C++, C#, Visual Basic, assembly language, and whatever other software else I could find.
And then of course, another favorite, both yours and mine, www.google.com. If it wasn't for them, how else would we ever be able to find anything on the internet.
And of course we can't forget that one site where all the techies goes to exchange their ideas, www.linkedin.com where I've been a long time user. Currently I have over 13,500 connections on LinkedIn and continually growing. The best part about LinkedIn is that it's a place where technical professionals can exchange ideas and obtain positive feedback.
It could be disastrous if we don’t have the vision to account for things that could happen in the future when IoT integrations become the standard.
On July 4, 2017, one of the major headlines on the internet stated, “A Data Glitch Causes Apple's Stock to Soar 348%, Pushing Its Market Cap to $3.37 Trillion”. A NASDAQ spokesman said "As part of its normal process, the UTP distributed test data and certain third parties improperly propagated the data. Nasdaq is working third party vendors to resolve the matter." Normal? It is a good thing it happened after the market had closed. Can you imagine the Global pandemonium that would have occurred during normal hours?
So what does this tell us about the future when IoT controls so many things in our environment? As an example, eventually IoT may control the entire U.S. and Canada Power Grid. Can you see somebody improperly propagating the data to the Power Grid causing an overload and shutting down the entire system? Case in point, the Northeast Blackout of 2003 where power was off for about seven hours, and some areas more than a day. There were 11 deaths and cost an estimated $6 billion.
Thousands of people walk out of downtown Manhattan towards the Brooklyn Bridge on August 14, 2003 in New York City after the Northeast Blackout. (Photo by Jonathan Fickies/Getty Images)
Could this be your IoT panic because you couldn’t see the “Big Picture”?
As Visionary IoT creators of automating the functions of the World, we need to foresee these possible future catastrophes and account for their possibilities now. We may be automating small things now and thinking they are big, but in the future, we will tie these items together, and add more and more items to centrallized controlling systems. We must put the hooks in now for the checks and balances required for the future.
Let’s don’t have another simple “Y2K $100 billion” bug because we forgot to compensate for the up and coming 2038 “Unix Millennium Bug.”
Every IoT solution must ask the question, “What If?”
Now there’s a shocking headline! Is it true? Yes, it’s true! Look at all of the companies making the changeover to the world of IoT and Social Innovation. They're all looking to obtain a piece of that multi Billion dollar pie. Some say multi Trillion dollar pie.
Is this a positive change? Yes it is. Companies large and small are restructuring for the move to IoT. Yes there are a lot of people being laid off during this move, but it is compensated by the hiring of people to fill the empty IoT requirements. It's not like the Dot Com crash where there was nothing to fill the void.
IoT's goal is to Automate the World!
This morning, around 11:30 AM (PDT), my wife and I were discussing items that we needed to purchase at the grocery store when Alexa, my Amazon Echo Dot, interrupted us. Alexa stated that she had just started a free three month trial with Amazon Fresh for me. We looked up in shock! Neither of us had activated Alexa.
Alexa then began to offer grocery items that were on sale and if we wanted them added to our Amazon Fresh account which I, in turn, said no. After offering two items, Alexa became silent.
We looked at each other in amazement! Nobody had activated Alexa by using her name or manually. We were just talking about grocery items we needed to buy.
Was Alexa listening to our conversations, or was this just a “Twilight Zone” coincidence? Or, maybe a generic sales pitch that coincided with our discussion?
We all know that in the future of IoT, things will be listening to all of our wants and needs. Let's pave that road to the future open-ended.
A Simple Fix for a Simple Error.
Have you ever written a White Paper that was printed and published, that a colleague and a customer pointed out word usage errors that you had missed? Or you handed in your perfect essay you were expecting an “A” which came back with a “B” because of incorrect word usage? You even made the extra effort to use Microsoft Word Spelling & Grammar checker and requested numerous people review your paper, but it still contained that embarrassing error.
What about emails? How many times have you sent an email and used the wrong word? It wouldn’t have been too bad when sent to a colleague, but it went to your boss or a customer.
And what do we mean by the term “word usage?” In the world of English grammar, these are words that sound the same, have different meanings, but are spelled differently, and are called common homophones. Some simple examples are: [There, Their, They’re], [Too, To, Two], or [Buy, Bye]. Some more complex ones: [Cast, Caste], [Flair, Flare], [Lie, Lye], [Stationary, Stationery], or [Lean, Lien].
If you want to see an example of excessive incorrect word usage, Google “Ode to the Spell Checker.”
I decide to do something about this word usage problem when my daughter came home from high school in tears because she had received a “B+” on her essay because of one-word usage error where she had used “mind” instead of “mined.” She had written the paper using MS Word 2003 and had run the Spelling & Grammar checker that passed with flying colors.
Since I was a Software Engineer Manager, Project Manager and software engineer experienced in numerous programming languages, and at that time C++, and had previously created multiple software programs, I knew that I had the technical capabilities to create a program that would check Microsoft Word documents for homophone usage.
In my spare time, I started the process of gathering the requirements for the project by speaking to numerous people, (my future customers), to learn their requirements and ideas. I researched books, magazines, and newspapers at the local libraries, the internet, English teachers at high schools, and a few English professors at the local colleges. The time period for this research was in the early 2000s, so most of my research had to be manual. The internet at that time was still relatively new and not the fantastic research tool it now is.
After gathering all of the information for the project, I decided what would be the best requirements for the program. The overall concept would be to create a program that would run on any version of the Microsoft Windows operating systems that supported Word 97 through Word 2003. The first step in the process was to create the Software Requirements Document that would contain the program requirements. (I know, all of you dedicated Agile Manifestoes don’t care much for documentation, and prefer full speed ahead and hack it out since programmers only like to code. But somewhere there needs to be a happy medium.
The main components of the program are the GUI interface for the flow control and a database or flat file containing the homophones dictionary that may contain up to 10,000 pairs of words. Worst case, there could be up to six homophones on a line. The database or flat file must be large enough to expand to 10,000 rows and eleven columns wide. For each row, columns one through ten will contain a group of homophones, and column eleven contains a description of the row of homophones.
The main reason for a larger dictionary is to accommodate other word functions and allow different types of dictionaries such as medical, legal, academic, business, general and others depending on the user's requirements. The user will also have the capability to add rows of homophones to build their dictionaries or expand current dictionaries.
With large dictionaries, sorting performance is a major issue. I selected several low-cost databases and tested their performance against a flat file. After extensive testing I determined the flat file performed faster than the databases. Other factors for going with a flat file; no licensing, single user program, and it’s free.
When the program initially starts, a secondary dictionary is created utilizing a specialized sorting routine for fast look up of the homophone words. This is done once and saved to disk unless the users modifys the dictionary or changes to a new dictionary. All words shall be sorted based upon the frequency used in the actual text. As an example, all words starting with the letter “e” shall be alphabetized as a group first, then the next letter with the most words until all words are sequenced and alphabetized in the secondary dictionary. The adjacent column of each word shall contain the addresses of the word group in the primary dictionary.
So that sorting can be achieved faster, a single letter table containing 26 rows, one row for each letter of the alphabet, will be built that will contain the first letter from each group of alphabetized words in the secondary dictionary. Each row will contain the first letter, the number of words in the group, and the address of the first word in the alphabetized list in the secondary dictionary. This allows me to take the first letter of the test word and quickly find the homophone word group. A detailed description of the sorting algorithm can be found in the Software Design Document.
The GUI flow control of the program allows the user to step through a Microsoft Word document searching for homophones. When a homophone is found in the document, the homophone word group is displayed on the screen from the dictionary allowing the user to select the correct homophone.
The program was developed using two languages, C++ and VBA. C++ was used for the GUI and the flow control, whereas a DLL was written using VBA to communicate with the Microsoft Word document. When a homophone word was found in the document, the word was passed back from the DLL to the main program. The homophone word group was found and displayed for the user to select the correct homophone. Once the correct word was selected, it was sent to the DLL where the word was replaced in the document. This process was repeated until all homophones were found, verified, and or corrected in the document.
After developing the program, I got the chance to do real live testing on essays that my daughter and son wrote for high school. No more tears for word usage issues. Later on, when they had to write college entrance essays, the program found one error on each paper. They both got into their choice of colleges, my daughter went to Santa Clara University, and my son went to John Hopkins University.
With this success, I decided the program could be a viable product and started the process of finding business partners to start a business and market the product. I found an individual that had been CEO of several companies with an MBA from Harvard. He pulled in a VP of Sales and a VP of Marketing, and I was assigned VP of Engineering. To learn more about the formation of a company and general business, I got to work with the CEO and learned how to create the business plan, and the one, two, and five-year Operating Expense budget, understand projected profit and loss, and projected cash flow.
After completing the market study, we came up with the name for my program and called it “RightWord”. The reasoning was quite simple since the whole concept was to find the right words in a document.
The next step in the business plan was to find seed money from an investor so that we could fund our operations, and package and sell RightWord. After several months, our CEO found an investor that we would present our business plan in hopes of obtaining funding. The investor's name was Finis Conner, the founder of Conner Peripherals. He became involved with investing in startups after he sold Conner Peripherals to Seagate. After our presentation to Finis Conner, he agreed to fund our business, but only on a month to month cash flow. Since this didn’t fit our business model where we needed 1.2 million dollars up front to package the product and distribute it to many software stores, our CEO turned it down. We never did find funding after that, and the company was eventually dissolved.
Since then I decide to update the software from C++ to C# and upgrade the latest versions of Windows and Microsoft Word 2010 through 2016. Now the product can be sold on the internet eliminating the high cost of packaging software. The market study I conducted shows the biggest market place for the product is for high school and college students and ESL. The product name needs to change too.
I’m not sure I’ll market the product, but the biggest advantage I’ll have is that rewriting the software will keep my skills current. So it’s a win-win solution for me!