Skip to main content

Corporate Series: (1) Processes

This post comes as an observation on what is happening around us, in so called ‘Corporates’. I just realize that there will be more than one posts. There are many ideas and notes, that I want to treat them separately.
Before going further, I would like to mention that this post doesn’t have a connection with the company that I work for. It is only the output of different discussions that I had with friends that work around the globe for different ‘Corporates’.

Why I’m using ‘Corporate’ with ‘ ‘?
These companies are usually under 1.000 people and try to play like a ‘Corporate’, but in reality they are not ready for something like this. They have complex process and don’t care to optimize them. They forget that behind a process is one or more person that will run it and a process needs to add structure, clarity and repeatability – not only power and control. For a ‘Corporate’ like this, an external audit or an external opinion from a consultant is not acceptable, is too expensive and might damage the revenue, by adding extra costs.

Processes and Standards  
It is important to remember that not all companies are like this. I discovered (and still discovering) great companies, that yes, are truly a corp., but at the same time you don’t feel them like this. Even if they have processes, different communication paths and a complex structure, behind them you find people that share the same goals or the same vision (but from different perspective).
Imagine that you need to pre-order the lunch for workshop. You know that someone from the attendees is vegan. At the same time, you are aware that the current supplier(s) doesn’t have a vegan menu. In a so called ‘Corporate’, even if you reach a person, not only the web interface of a request form, you will find out:
-        Sorry, the current supplier doesn’t have a vegan menu and the company standard doesn’t allow us to order from other external provider(s).
A response like this is not useful and you will not have too many options. Well, there will be no option for you in such a case.
Yes, it is true that the current process and company standards doesn’t allow you to order from another provider, but we need to remember that in general a process is applicable in most cases (let’s say, 99%), but there are exceptional cases that needs to be treated separately. You might even realize that you could find solutions for different problems by respecting the process 100% - but with the support of a person, not only from the web form.
You might find out:
-          Unfortunately, we are not allowed to order from other provider. Let me check if I can order more fruits and salads. In this way, we might be okay.
Yes, this is not the perfect solution, but it is a better solution, than nothing.
Or even better:
-          Unfortunately, we are not allowed to order from other provider. Let’s me check if I can order more fruits and salads. In this way, we might be okay. Also, I will discuss with the process owner or with the suppliers owner to see if we can improve the current setup and to avoid such situations in the near future. I will follow-up with you related to this topic once I have updates.
Even if we have the same response with a hot-fix for the current solution, there is also something more. Someone is ready to help us and see what we can change (if is necessary) to avoid this kind of situations.

Should we change the current process for an exception
Of course, we should not change flows and processes, for each exception. But we need to be aware if we need to improve or change current processes. We are living in a world that changes every second. It is impossible to assume that a thing that is applicable NOW, will be also applicable in 2 or 3 years.
This is why it is important to be aware and try to get feedback related to current processes and needs. Simple solutions, like offering a preferred (recommended) list of suppliers, but also allow other suppliers to be used as long as some company standards are respected are enough. In most cases people will use the standard suppliers.

Conclusion: Don’t forget to CARE    
In situation like this, the thing that is the most important in my perspective is people. They need to CARE. They need to care about others, they need to care about what you want to do and they should be open to help you. On top of this, they should CARE about the current PROCESSES and STANDARDS and are ready to improve them when necessary.
The worst case where you can end up is with a company or group of people that don’t care anymore. They don’t care about the real needs and the others. They look and see only the process and company standards. With a team like this, I’m pretty sure that you will end up with a lot of frustration, unhappy people that will leave the company OR they will not care anymore also.

Don’t forget to CARE and HELP others. In the end we have the same purpose. 

Comments

Popular posts from this blog

Windows Docker Containers can make WIN32 API calls, use COM and ASP.NET WebForms

After the last post , I received two interesting questions related to Docker and Windows. People were interested if we do Win32 API calls from a Docker container and if there is support for COM. WIN32 Support To test calls to WIN32 API, let’s try to populate SYSTEM_INFO class. [StructLayout(LayoutKind.Sequential)] public struct SYSTEM_INFO { public uint dwOemId; public uint dwPageSize; public uint lpMinimumApplicationAddress; public uint lpMaximumApplicationAddress; public uint dwActiveProcessorMask; public uint dwNumberOfProcessors; public uint dwProcessorType; public uint dwAllocationGranularity; public uint dwProcessorLevel; public uint dwProcessorRevision; } ... [DllImport("kernel32")] static extern void GetSystemInfo(ref SYSTEM_INFO pSI); ... SYSTEM_INFO pSI = new SYSTEM_INFO(

Azure AD and AWS Cognito side-by-side

In the last few weeks, I was involved in multiple opportunities on Microsoft Azure and Amazon, where we had to analyse AWS Cognito, Azure AD and other solutions that are available on the market. I decided to consolidate in one post all features and differences that I identified for both of them that we should need to take into account. Take into account that Azure AD is an identity and access management services well integrated with Microsoft stack. In comparison, AWS Cognito is just a user sign-up, sign-in and access control and nothing more. The focus is not on the main features, is more on small things that can make a difference when you want to decide where we want to store and manage our users.  This information might be useful in the future when we need to decide where we want to keep and manage our users.  Feature Azure AD (B2C, B2C) AWS Cognito Access token lifetime Default 1h – the value is configurable 1h – cannot be modified

What to do when you hit the throughput limits of Azure Storage (Blobs)

In this post we will talk about how we can detect when we hit a throughput limit of Azure Storage and what we can do in that moment. Context If we take a look on Scalability Targets of Azure Storage ( https://azure.microsoft.com/en-us/documentation/articles/storage-scalability-targets/ ) we will observe that the limits are prety high. But, based on our business logic we can end up at this limits. If you create a system that is hitted by a high number of device, you can hit easily the total number of requests rate that can be done on a Storage Account. This limits on Azure is 20.000 IOPS (entities or messages per second) where (and this is very important) the size of the request is 1KB. Normally, if you make a load tests where 20.000 clients will hit different blobs storages from the same Azure Storage Account, this limits can be reached. How we can detect this problem? From client, we can detect that this limits was reached based on the HTTP error code that is returned by HTTP