techwiddeep.com https://techwiddeep.com/ Tue, 21 Nov 2023 09:33:39 +0000 en-US hourly 1 https://wordpress.org/?v=6.5.2 175675647 Trading Org – Contributions https://techwiddeep.com/trading-org-contributions/?utm_source=rss&utm_medium=rss&utm_campaign=trading-org-contributions Wed, 23 Aug 2023 06:30:58 +0000 https://techwiddeep.com/?p=1295 Worked at a Crypto exchange. Following are the major tasks accomplished while there. . Incoming payments redesign. . Impact . . Helped reduce Ops team from 11 to 3 . ●Direct savings           : ~30 lakhs / year ●Direct Processing savings   : ~1 crore / year ●Indirect savings        : ~ 50 lakhs/ year… Continue reading

The post Trading Org – Contributions appeared first on techwiddeep.com.

]]>
Worked at a Crypto exchange. Following are the major tasks accomplished while there.

.

Incoming payments redesign.

.

Impact

.

.

Helped reduce Ops team from 11 to 3

.

Direct savings           : ~30 lakhs / year
Direct Processing savings   : ~1 crore / year
Indirect savings        : ~ 50 lakhs/ year of dev effort was saved.

.

.

Context

.

Crypto is an upcoming field and does NOT have sufficient support from the Government; therefore the banks.

.

Incoming payments (on-ramp) integration is therefore done by accepting statement files from various banks.

.

Problems

.

The previous design had been done with many design flaws. E.g.

.

.

Lock was taken on prefix + user.

.

This meant – whenever 2 payments were processed for the same user. ( different flows – UPI / bank deposit ). Sometimes the lock wasn’t taken.

.

This meant that the user was either double credited or double debited.

.

On one hand, this resulted in direct losses to the organization. On the other hand, it created a HEAVY operation cost.

.

Extra credits had to be recovered manually via legal notices.
Extra debits had to be refunded with penalties

.

.

  Solved by changing the lock on a single mutex – userId

.

Code bugs – locking/ unlocking

.

Among hundreds of locks, few missed unlocking a user. This made all other requests for the user wait for the expiration time of 1 min. Increasing the turnaround Time.

.

Solved by creating a lambda function for locking + unlocking. A method could be passed as an argument in the method.

.

Ensured guaranteed locking/ unlocking. Solving the issue across the codebase.

.

If – else based code

.

The previous version of the code was written with if/ else conditions for each bank integration. Over time the number of conditions became so many, that managing the code became too much.

.

The code was modularized into classes. The classes had specific logic.

Each logic was called for a specific banking partner.

.

Modular code reduced the management cost.

.

Each flow had its own logic

.

Logic was written once and triggered from multiple places.

.

Design flaws

.

.

Tables were NOT designed to allow logic expansion.

.

Each new change needed an ad hoc column. This created problems later.

.

e.g. the same column updated twice lost its history. History was needed for business logic.

.

Changed logic to vertical expansion from horizontal table expansion.

e.g. instead of adding a new column called vipStatus. Design the table to have 2 columns called PropertyName and PropertyValue

.

Now the table can store any number of properties uniquely without another property of the same user.

.

Related ad hoc properties were stored in a different data structure ( tables ).

.

This meant …

.

Additional query joins, therefore higher DB costs, and slow queries.

.

These properties were redesigned to be stored in a JSON column in the same table. This reduced both storage costs + the need for additional joins.

.

.

Webhook callbacks were not persisted.

.

This created issues while debugging.

.

Logs were difficult to parse through. Were filtered down for cost reasons … only 30% of the logs were brought to Datadog ( similar to Kibana ).

.

Logs persisted only for 15 days. Cost reasons.

.

Parsing through logs was time-consuming… at peak times of production issues.

.

Solved by creating webhook callback tables. The tables were purged after 30 days to NOT take up lots of space.

.

All logs were available with success/ failure messages.

.

Time Spent

.

Me and 2 other engineers ( 6 years and 3 years experience ) respectively, worked for ~1 month.
Change Included
Code rewrite
DB redesign
New modules – purge, flows etc.

Result

.

Losses reduced to ~0 from ~75 lakhs, in the previous quarter. Any losses were due to Ops team errors.
New integration time was reduced from 14 days to ~3 days.
Ops team size reduction ( 11 to 3 ) saved further costs to the organization.

.

.

Reliability / Cost Reduction / Performance Improvement

.

Impact

.

Reduced Cloud costs by 30% ( still going down )

.

Below are the projected numbers.

.

Direct savings ~30 – 60 lakhs / year
Direct Processing savings ~2 crore / year
Indirect savings – ~ 1 crore / year of dev effort was saved.

.

.

Context

.

Organization was one of the highest $$ payers to AWS for cloud costs.

.

At the same time, the application faced issues during the months – Feb, March and April 2023.

.

.

Improvements

.

Following were done to improve the application:

.

DB Index creations.

.

Indexes were either missing or NOT being used in the tables.

.

Logs were analyzed to find the slowest APIs. API queries were checked.

Each query was analyzed to find whether it used an appropriate index.

.

The following types of indexing were done.

.

Hash Indexes – Simple equality comparisons.

.

Queries that referenced a direct = or in comparison. Hash indexes were created.

.

Performance

Before Index

After Index

Increase in Performance

.

( old – new ) / new * 100

Max

1799 ms

2.5 ms

71860 %

P99

1747 ms

1.5 ms

116300 %

P95

628 ms

1 ms

62700 %

P90

609 ms

0.933 ms

65100 %

.

.

GIN Index ( Generalized Inverted Index )

.

Gin index helps with full text search.

.

Certain fields needed full and partial search ( some banks gave partial ids ).

.

Performance

Before Index

After Index

Increase in Performance

.

( old – new ) / new * 100

Max

5.3 sec

471 ms

10200 %

P99

4.94 sec

193 ms

24600 %

P95

4.94 sec

97.7 ms

49900 %

P90

4.94 sec

53.4 ms

91500 %

.

.

B Tree Indexes

.

Composite

.

The columns in the Index were verified to be in the same sequence as that in the query. This is important to ensure the index performs optimally

.

Expression

.

Json columns with particular key searches are created as Expression indexes.

.

    .

Performance

Before Index

After Index

Increase in Performance

.

( old – new ) / new * 100

Max

8.91 sec

3.72 ms

239400 %

P99

8.76 sec

3.38 ms

259000 %

P95

8.36 sec

2.85 ms

835700 %

P90

8.11 sec

1.96 ms

413600 %

.

.

N + 1 Query problem

.

A parent query fetches many child objects. Each child object fetches details via a query.

.

Such queries were batched to fetch details in one go instead of multiple ones

.

Reads in a loop – SQL / Redis / Dynamo DB

.

Such queries were batched to fetch details in one go instead of multiple ones

.

Poorly designed code

.

High complexity Redis commands like – HGETALL ( gets all keys with a prefix ) were used.

These were fixed to use the right data structures.

.

High response time from internal / external services

.

Cache responses where possible e.g. Master data – currencies etc.
Optimized APIs

.

Dynamodb – insufficient read/ write capacity

.

Right size was provisioned

.

Archival of data

.

Created a Util file – taking DB name, table name, where condition, batch size, deleted by.
Trigger to the util did the following :
Read data in batches
Write it in a file
Encrypted file using a random key
Calculated Hash of the file
Create an entry into the table with details of the DB, table, where condition, batch size, deleted by etc.
Move the file to Amazon S3
Delete the data.

.

Create Partitions in the table.

.

These were date range based partitions. Such tables were used in the range of last 12 months.

.

Data before that wasn’t needed

.

.

Result

.

Reduced Cloud utilization by 30% ( hence 30% costs saved )

.

Below are projected numbers.

.

Direct savings ~30 – 60 lakhs / year
Direct Processing savings ~2 crore / year
Indirect savings – ~ 1 crore / year of dev effort was saved.

.

.

Checklist Creation

.

.

Team manager gave feedback that the same issues repeated in the team e.g. missed deployment steps, partial testing deployments etc.

.

So I created this checklist. This helped reduce 95% issues.

.

.

The post Trading Org – Contributions appeared first on techwiddeep.com.

]]>
1295
Ecommerce Org – Contributions https://techwiddeep.com/ecommerce-major-tasks/?utm_source=rss&utm_medium=rss&utm_campaign=ecommerce-major-tasks Sun, 20 Aug 2023 06:59:46 +0000 https://techwiddeep.com/?p=1285 I worked at a major e-commerce organization. Following are the major tasks I accomplished while there. . Cache Redesign . Impact . ●Direct savings in infra costs    : ~30 lakhs / year ●Projected savings in infra costs    : 1 cr in the next 2 years . Infra . ●Normal time site load     … Continue reading

The post Ecommerce Org – Contributions appeared first on techwiddeep.com.

]]>
I worked at a major e-commerce organization. Following are the major tasks I accomplished while there.

.

Cache Redesign

.

Impact

.

Direct savings in infra costs    : ~30 lakhs / year
Projected savings in infra costs    : 1 cr in the next 2 years

.

Infra

.

Normal time site load             : 30,000 requests/ second
Sale time load              : 60,000 requests/ second

.

Normal Pod throughput     : ~2000 requests/ second.
Sale time throughput    : ~3000 requests/ second.

.

Pod RAM                : 16 gb
Pod CPU                 : 8 cores

.

Redis                 : 3 master 3 slave clusters.

.

Context

.

Client is an ecommerce website. One of the existing services – Aggregator fetched data from ~7 different services.

.

a.Price service ( fluctuated frequently )
b.Inventory service ( fluctuated frequently but less than Price )
c.Promo service ( What promotions are available with the product. Varied every sale season )
d.Size chart service ( Mostly static data )
e.Cohort service or Classification service. ( Static but varied based on business needs )
f.… few others

.

Data was saved on Redis collectively for each product e.g.

.

Key = Price service key + Inventory service key + Promo service key + ….

.

Value = Price of product + Inventory of product + Promos on product … etc.

.

This design was copied from a legacy system bought by the organization. (forgetting the name)

.

Cons of design

.

TTL was set to the minimum of all the ~7 services.

.

Prices fluctuated most frequently. So, ‘price’ had the smallest TTL of ~15 seconds.

.

After 15 seconds, however, all other data along with price expired too. And had to be fetched again.

.

Cohort / Size chart data was also deleted. These had to be fetched again. This premature expiry created an unwanted load on Cohort and Size service.

.

Data was fetched repeatedly despite it NOT changing.

.

Key creation was slow

.

Each key was heavy ( a big string ) and had to be created slowly.

.

It had to be created by 7 different adapters, working sequentially. This was because NOT all services used the same product property.

.

e.g. Size Chart will NOT always use a product code instead it could also use a standard size metric – Indian, UK, US etc.

.

Total Redis IO was high ~ 50 ms.

.

Each key – value pair carried data from 7 different services. Therefore each pair was heavy.

Each redis IO therefore took ~50 ms – ~100 ms.

.

Pros of design

.

Only 1 call was made to redis for each read.

.

However, the same data was read sequentially from 6 upstream systems. And posted to redis every “n” seconds.

.

.

Redesign

.

As part of the redesign, following changes were done:

.

.

Created a separate Redis key + TTL for each service.

.

When data from one service fluctuated, then it did NOT impact data from the other services. e.g. Price fluctuations did NOT impact size chart data.

.

We ended up NOT caching Price data. It was always fetched live.

.

Some services had TTL set to 6 hours while others had TTL in days.

.

Size chart – 24 hours

Promo – 3 hours

.

Enabling Caching control – Given to the business team.

TTL time for each service – Given to the business team.

.

Con

.

1.The number of calls required to read data increased. From 1 to 7.

.

2.After the 7 calls, all data has to be merged to produce a single output for the frontend server.

.

3.This meant that the slowest response added to the overall response. ( weakest link in the chain )

.

Pros

.

1.Traffic on static services decreased.

Only Price service was called frequently. For others, traffic dropped.

.

2.Upstream service failure impact reduced.

Data was served via cache. ( In past ~2-5% requests failed due to upstream errors )

.

3.Reduced IO duration for each Redis request to ~5 ms

This was because the size of each read/write became smaller.

.

.

Time spent

.

1.Me and 1 other mid level engineer ( 7 years experience ) worked on the redesign for ~ 3 weeks.
2.Changes included
a.Code rewrite
b.Prometheus integration for the new calls.
c.Creating a dashboard on Grafana for the Prometheus stats

.

.

Results

.

.

1.Throughput increased from 1200 requests/ sec to ~2100 requests/ sec.

.

Company was moving away from 24 core machines to 8 core machines.

.

On the old machine performance was ~1200 requests/ second. So, the requirement on the new machine was ~1200 requests/ second.

.

But the new design served ~2100 requests/ second.

.

Meaning, despite the CPU being reduced 66%, the throughput increased ~80%.

.

2.CPU utilization fell from ~20% to ~4% during most times.

.

3.Response time remained around 50 – 100 ms/ for each request.

.

4.Service was tunable at each upstream level.

.

Business team could choose to tune TTL for each upstream system.

.

.

Failed Rewards Reporting

Impact

.

Turn around reduction : 3 weeks to 3 mins

.

Context

.

When users bought from the website, they receive rewards e.g. 50OFFDOMINOS, 75OFFOVENSTORY etc.

.

Rewards are of 2 types …

1.Immediate
2.Delayed ( given after the order cancellation duration is over )

.

.

Players

.

Business team  : configured sales times.
Business team  : estimated coupons required
Promo team    : prepared coupons in advance
Promo engine     : validated, calculated and awarded coupons. This was our service
Email service     : notified customers.

.

.

Problem

.

Players malfunctioned. e.g.

.

Business team forgot to enable rewards at midnight.

So, the orders placed between midnight till now, would NOT get rewarded

.

Business team MISCALCULATED sale volumes.

So many orders would NOT get the coupons. This was because the Coupon engine would NOT have any more coupons left.

.

By the time the coupon engine would generate more coupons ( from a third party service ). Sale time would be over, and our service would be unable to disburse them.

.

Bugs in Promo engine

Some customers would NOT get coupons.

.

Bugs in Notification engine ( mails or app notifications would NOT get delivered )

.

.

Solution Chain

.

After NOT having received the coupons, following would typically happen.

.

Customers would call Ajio customer care.
Customer care would redirect to the business team.
Business team would come to us ( the Dev team )
We did NOT have access to production env, so we contacted TechOps team.
After a few days, some issues were figured out.
To solve the error, some action would need to be taken.
We would ask for data from the PII team. TechOps did not have access to sensitive data like phone numbers or emails.
After getting exceptions etc, the PII team would give data.
Dev team would create a script -> give it to TechOps.
TechOps would trigger the script ( from Dev team ) + Data ( from PII team )

.

.

All of the above typically took ~3 weeks. And was very tiring for the tech team.

.

.

Redesign

.

I recommended, got approved and started on a new business process.

.

Generate a Rewards report, for each order.

The report would be used by the Customer Care and Business team.

.

They would be able to see a 360 degree view of each order + rewards.

.

To do the above …

.

For each Reward
Given – Generate an event with ALL information on the reward given.
NOT Given – Generate an event will ALL information for the failure reason.

.

For each email / notification
Success – Generate an event
Fail – Generate an event.

.

At PII layer … read and consolidate all events.

.

Create a report in Tableu ( used for reporting ) which allows for users to see
User data
Order data
Reward data
Notification/ email data.

.

.

Result

.

When an Ajio customer calls. Customer care would have a complete view of what happened.

.

80% of the requests could be handled at level 1 itself. They could redirect the solution without the intervention of the Tech team.

.

The time of 3 weeks would reduce to 3 mins.

.

I coded the highlighted part of the design. Also initiated the Tableau report creation. And then moved to my next organization.

.

The post Ecommerce Org – Contributions appeared first on techwiddeep.com.

]]>
1285
Perfect Interview – Decoded https://techwiddeep.com/perfect-interview/?utm_source=rss&utm_medium=rss&utm_campaign=perfect-interview Sun, 07 May 2023 13:51:52 +0000 https://techwiddeep.com/?p=1265 Elements of a great interview. #book excerpt . Disclaimer : The blog does NOT help techies that do NOT know their tech. . Intro . Ask any interviewer why they chose one candidate over the other. They will tell you about qualifications and experience. They will also have a list of skills needed for the… Continue reading

The post Perfect Interview – Decoded appeared first on techwiddeep.com.

]]>
Elements of a great interview.

#book excerpt

.

Disclaimer : The blog does NOT help techies that do NOT know their tech.

.

Intro

.

Ask any interviewer why they chose one candidate over the other. They will tell you about qualifications and experience. They will also have a list of skills needed for the job.

.

But research shows interviewers are deluding themselves. They are swayed by a mysterious and powerful force.

Data shows that only one important factor plays a role:

Did the candidate appear to be a pleasant person ??

.

Folks who made an effort to smile / maintain eye contact.
… who talked about topics not exactly related to the discussion. But of interest to the interviewer.

A comment about coffee turned into a 15 min chat. Like, how the interviewer was a coffee aficionado. And had a 2 lakh rupee coffee machine at his house.

Job was offered to me.

… who sincerely tried to praise the organization. Keyword – sincerely.

.

In other words – a pleasant person.

.

Studies demonstrate that going out of one’s way to be pleasant is way more important. More than qualifications and work experience.

PS : Ass-kissing is different from being pleasant.

.

How about black-spots ??

.

.

What if one has some weak areas ? lack of experience, unimpressive performance or less than stellar credentials ?

.

Again, data shows that – people who present their weaknesses in the beginning do better. Admitting weakness is seen as a sign of openness.

Think about it for a second. A person who admits his failures would have the strength of character and integrity. Therefore, the person would NOT intend to mislead us.

.

For an interview, I completely forgot about the schedule. And was working on something else. Later (having kicked myself on the bum) I wrote back the following:

The interview was re-conducted.

.

I just realized that we had a discussion today. Was in a production issue, and completely forgot about this conversation. Lost track of my time ..

.

This is completely my fault. And I apologize.

Would we be able to reschedule this to another day ? If so, I’ll be grateful. If not, I understand. Thanks.

.

.

Admitting one’s weakness, a person becomes likable. But again, openness or pleasantness have their limits. ( I wrote the mail back in within the hour, not after a week )

.

.

Glories and Victories

I’ve been in many interviews where the candidate opened up with their glorification. It’s kinda a showoff.

Again we have studies. A person is more likable when they mention their accomplishment towards the end.

.

Think about it – if someone mentions their strengths too soon, then they seem boastful. However, if they let their strengths emerge naturally, they are seen as modest.

Kids – wait to let the person know that you single-handedly saved the day.

.

Blunders

.

So, we’ve been pleasant, open, and modest. But what if I forgot the time complexity of binary search ? or something similarly silly ?

Again we have data. We overestimate the impact of a mistake.

Meaning, our mistakes seem bigger to us than they really are. This is also called the ‘Spotlight effect’ in psychology.

.

Excessive responses might actually draw the interviewer’s attention to the mistake.

So, if appropriate then acknowledge the mistake. And move on as if it wasn’t a big deal.

.

Wrap up …

.

These are the elements of a great interview …

.

Likeability is more important than achievements and experience. So,

Look smart; groom yourself well.
Wear a collared shirt
Shave
Listen sincerely
Ask questions based on what you hear.
Maybe repeat something back that the other person said. Lets them know that you were really listening.
Give a genuine compliment
Talk about non-work related stuff.
Smile and maintain eye contact.

.

Don’t hide weaknesses

Instead, bring them out in the beginning. This will give you a credibility boost.

.

Wait to share achievements

This lets the interviewer know that you are modest.

.

If you make a mistake

Don’t overreact. Acknowledge if appropriate, then move ahead.

.

Excerpts from the book – 59 Seconds by Richard Wiseman

The post Perfect Interview – Decoded appeared first on techwiddeep.com.

]]>
1265
Achieve Co-operation at IT Companies https://techwiddeep.com/cooperation-it-company/?utm_source=rss&utm_medium=rss&utm_campaign=cooperation-it-company https://techwiddeep.com/cooperation-it-company/#comments Sun, 31 Jul 2022 17:10:00 +0000 https://techwiddeep.com/?p=1180 #A blog series . Intro . Achieving cooperation and delivering is a priority for IT companies. Their bread and butter too ! . Missed timelines, delayed projects, stretching programs, over-budgeted portfolios are common. Equally so within the IT industry. To solve these problems organizations create systems. Like – ●Bonuses ●Performance reviews ●HR practices ●Team exercises… Continue reading

The post Achieve Co-operation at IT Companies appeared first on techwiddeep.com.

]]>
#A blog series

.

Intro

.

Achieving cooperation and delivering is a priority for IT companies. Their bread and butter too !

.

Missed timelines, delayed projects, stretching programs, over-budgeted portfolios are common. Equally so within the IT industry.

To solve these problems organizations create systems. Like –

Bonuses
Performance reviews
HR practices
Team exercises
Parties, excursions, etc.

.

These are all to build teams. And so co-operation.

As part of this blog series, we look at “systematic” concepts that achieve cooperation. Or ought to.

.

We start with … what DOESN’T work.

.

Bonuses

.

Bonus : A monetary incentive for a certain behaviour.

 

.

Let us start with few questions:

What behaviour should an IT company reward ?
Faster delivery – even if with some bugs.
Quality delivery ( zero P1 bugs ) – even if delayed.
Scaleable design – with added development cost.
More lines of code – even when it’s repeated.
Meeting timelines ?
Documentation ??

.

Answering the above questions is NOT easy. Because, companies go through cycles where the desired behaviour changes.

A startup needs fast delivery, whereas a large organization prefers quality. Furthermore …

The startup might mature into a large organization.
And a large organization might have a new project that needs a startup-type handling.
Fast delivery might mean zero-documentation. On the other hand …
A handover or attrition might need loads of documentation.

.

In such changing scenarios, how do you give the bonus ? Do we reward a different behaviour each time ?

.

Appraisal reviews

.

Performance review months at IT companies are the most unusual times.

.

English suddenly becomes the language of communication.

Especially with folks from the vernacular languages. You see – vernacular is the casual mode of communication. ( but not during appraisal season )

Unlike regular meetings that stretch unnecessarily, ‘review’ meetings are short. ( they are discomforting for both the appraisee and the appraiser. )
Eye contacts are avoided. ( lest they tell the truth )

.

Like the Autumn months, the greenery in the office landscape dries and starts to die. In anticipation of the upcoming winters !

.

A lot of HR meetings happen.
Coffee time gossip floats in the air.
Folks of the same designation huddle with hushed voices.
A curtain builds between the “us” and “them”.

.

It’s a time for revenge, grievances, proving and other things. Many times it is NOT for PERFORMANCE REVIEWS, and is for everything else.

 

.

But why ?? Here are some reasons appraisal systems give us heartburns.

.

Virtual Nature of a Software

We cannot see, touch, smell, taste or feel software. This puts us at an immediate disadvantage while evaluating a piece of code or a techie.

This is a MAJOR reason performance reviews are difficult.

 

.

A detailed blog on the topic @ Why IT industry is fertile ground for Cheatcodes

.

Human Variables

Humans are complex creatures. With our experiences and preferences, we are a recipe for imperfection.

Here are some factors that add to the broken system.

.

Being Judged is Discomforting

An Indian girl dresses up to be “seen” by a guys’ family. Ask her how she feels. Anxiety, stress, tense, pressure would be some of the words used.

Being judged in a professional environment is not very different. It creates anxiety.

.

Comparison

“Apples to Oranges” do happen. ( and wastefully so )

.

Biases

People bring their biases into performance discussions too. Dress code might become more important than the actual code.

.

Only Critiques, No Suggestions

Critiquing is easy and recommending is difficult. Many a time – with only criticism and no help. Appraisals turn into a humiliation exercise.

.

One Sided
Standard/ Bureaucratic
Phony Feedbacks

.

And IT companies depend on such systems for their growth. A system with so many flaws is at best – unhelpful, and at worst a hypocrisy.

.

Team Building – Parties, Excursions

.

We pick the next tool set – from the HR’s playbook. A team bowling event, a dine-out, paintball battles, secret santa, treasure hunts, cultural events and more.

I admit – these do build camaraderie. Just like going to the gym, once a quarter builds our body !!

.

While the events help. They are too few and far between, to achieve any reasonable result.

I submit – team building events delay any upcoming attrition at an organization. That’s it. Raising a team’s productivity is too far-fetched a goal for these events to be able to achieve.

.

To BE or Not To Be – tis the question

.

With all the flaws of – bonuses, appraisal systems or team building systems. Do we abandon them ?

.

I disagree. Abandoning such systems would create a “socialist” structure. One with no disincentive to be lazy, and NO incentive to work hard.

No software company can survive such neglecting techies.

.


During Soviet Union times, everyone stood the same risk of going to the Gulags. So, everyone stopped working.

You see – when everyone stands the same chance of being imprisoned. Being lazy and sent to Siberia sounds better than working hard and going there !

Same would happen at an IT organization.


.

.The answer then is – redesign the systems with some important characteristics.

.

.

The Pillars of a Cooperation Achieving System …

.

This is where our blog series begins. In the next set of blogs we talk about pillars of a cooperation achieving system.

.

As always … I speak only about the tech industry. Let’s begin …

Pillar 1 : Quick Detection of Behaviour

.

The post Achieve Co-operation at IT Companies appeared first on techwiddeep.com.

]]>
https://techwiddeep.com/cooperation-it-company/feed/ 1 1180
Achieve Co-operation | Quick Detection https://techwiddeep.com/detection-for-cooperation/?utm_source=rss&utm_medium=rss&utm_campaign=detection-for-cooperation https://techwiddeep.com/detection-for-cooperation/#comments Sun, 31 Jul 2022 17:46:50 +0000 https://techwiddeep.com/?p=1190 How quick ‘detection’ of behaviour helps achieve cooperation at IT companies. . Intro . Achieving co-operation and delivering is a priority for IT companies. Their bread and butter too ! . Missed timelines, delayed projects, stretching programs, over-budgeted portfolios are common. Equally so within the IT industry. To solve these problems organizations create systems. Performance… Continue reading

The post Achieve Co-operation | Quick Detection appeared first on techwiddeep.com.

]]>
How quick ‘detection’ of behaviour helps achieve cooperation at IT companies.

.

Intro

.

Achieving co-operation and delivering is a priority for IT companies. Their bread and butter too !

.

Missed timelines, delayed projects, stretching programs, over-budgeted portfolios are common. Equally so within the IT industry.

To solve these problems organizations create systems. Performance bonuses, HR practices, team exercises, parties, excursions, etc. These are all to build teams. And so co-operation.

.

As part of this blog series, we look at “systematic” concepts that achieve cooperation. Or ought to. So, the following are the requirements for a good review system.

Continuing from How to Achieve Co-operation. We start with pillar 1.

 

.

Quick Detection of Behaviour

.

If I, a software developer, am being lazy. Then even before I can be punished, my cheating must be detected. More importantly – it must be done quickly.

.

If the detection is fast and accurate, the punishment ( or reward ) can be immediate and accurate.

If I cheat, then immediate punishment reduces my profit. And increases its cost.
If I perform, then an immediate reward increases my ROI.

.

“Immediacy” thus increases the prospects of getting successful cooperation for an organization.

.

Vice versa is also true. If my performance is rewarded quickly, then it is reinforced. If not, I could attribute my rewards to my luck, communication, attendance, or worse – luck.

.


A good example is Pavlov’s experiment. Ivan Pavlov rang a bell each time he fed his dogs. As usually happens, the dogs salivated seeing the food. But eventually, the dogs ended up associating the bell with food.

Later Pavlov simply rang the bell, and the dogs salivated. Had the food been served hours after the bell, would we see the same results ? Nopes !

Stimulant and stimulus too far ? The behavior will never work.

Same goes for Software engineers.


.

.Quick detection

.

Let us consider the following:

.

We have a team of 10 developers. Deep is a lazy one !

His code does not solve all use cases, is buggy, poorly designed, and is late.

.

Deep’s lead quickly brings the issue to the notice of their manager. The manager reviews all details and comes in with a guilty verdict

Within a few days – he is critiqued and is asked to be careful. Since the reprimand is immediate, Deep hardly gets any benefit from his lethargy.

The ROI ( Return Of Investment ) on lethargy is very low. And chances are Deep will stand corrected very quickly.

.

On the other hand, wait 1 year for a performance review. The ROI becomes HUGE for Deep !

.

Slow detection

.

From the same 10 developers, let’s say, some collude to avoid work. They make an understanding with their Lead. Who hides their mistakes and covers for them. In turn, the devs stretch for the Lead when needed.

Together, they come up with tricks to divert accountability. Questions are diverted to the business team, product owner, architect, or manager.

If you think this is uncommon at large organizations. Well, think again.

.

Now cheating has become more complex. It has more dimensions.

MVP version ( minimum viable product )
Delivery time
Quality
Requirements
Cross-commit teams
Internal teams
Processes.

.

 

Leadership cannot always look at each dimension, therefore cheating is detected “much late”. This gives me ( the developer ) an incentive to be lazy.

.

In fact, many (so-called) leaders are incapable of verifying all dimensions. Therefore, they only look at the final stages of a deliverable. Like …

Number of bugs
Client feedback
Sales team review
Delivered software feel, etc.

.

More Complexity !

Unfortunately, these factors have other influences too ….

The client might give poor feedback to promote a competitor.
Product owners might not be competent to review technology.
Bugs might be beyond the current scope.

.

 

With all these complexities – detection and punishment become slow and inaccurate. This in turn raises the temptation to cheat.

I claim that – all large IT companies including Infosys, TCS, Cognizant, Wipro etc. face this problem.

.

If the system detects my lethargy slowly, and only partially. Then being lazy might seem like a good idea.

.

The scale problem

.

Consider an organization with ~100 employees. And designated with a hierarchy of around 5 layers.

.

Management has these additional questions to answer ….

Whether cheating has occurred ?
At which hierarchy or hierarchies did cheating occur ?
Who has/ have, cheated ?

.

The scale problem is cherry on top of the other ones. That is – collusion, complexities, monitoring ability, and other factors.

If figuring these out is slow, then people have incentives to cheat.

I bet that all large IT companies like Infosys, TCS, Cognizant, Wipro etc. face this problem.

.

Wrap up

.

Quick detection is important to generating cooperation, at an IT company. An annual review or a quarterly review, does not serve this purpose well.

.

In other words, a good performance review system needs “Quick detection of behavior”.

.

Excerpts from: The Art of Strategy

.

Next, we discuss the “Nature of rewards” in a performance system.

The post Achieve Co-operation | Quick Detection appeared first on techwiddeep.com.

]]>
https://techwiddeep.com/detection-for-cooperation/feed/ 6 1190
Achieve Co-operation | Nature of (dis)Incentives https://techwiddeep.com/incentives-for-cooperation/?utm_source=rss&utm_medium=rss&utm_campaign=incentives-for-cooperation https://techwiddeep.com/incentives-for-cooperation/#comments Mon, 15 Aug 2022 14:14:59 +0000 https://techwiddeep.com/?p=1214 How “type of a reward” helps achieve cooperation at IT companies.. Intro . Achieving cooperation and delivering is a priority for IT companies. . As part of this blog series, we look at “systematic” concepts that help achieve cooperation. We’ve looked at … ●Detection of behavior . Today we talk about … . Nature of… Continue reading

The post Achieve Co-operation | Nature of (dis)Incentives appeared first on techwiddeep.com.

]]>
How “type of a reward” helps achieve cooperation at IT companies..

Intro

.

Achieving cooperation and delivering is a priority for IT companies.

.

As part of this blog series, we look at “systematic” concepts that help achieve cooperation. We’ve looked at …

.

Today we talk about …

.

Nature of rewards/ punishments.

.

What the organization assumed was a reward. In fact, it was a punishment. The subject is best described with real-life examples. So, here we go …

.

Promoted to quit :

I was managing a very difficult project. Taking care of technical, managerial, design, architecture, client engagement, and other aspects. The right people became happy. And leadership promoted me to a ‘Manager’ position.

2 months later – I quit the job.

.

What the organization assumed was a reward, to me, was a punishment !

.

Why ?

.

A common idea is – a manager supersedes an engineer.

.

There are Techies and there are Managers. Both add value and are needed at IT organizations.

Personally, I have been interested in technical work. I do not have the aptitude or interest to be a manager.

So, to me – the idea that “a manager supersedes an engineer”, is just managerial hubris.

.


When done in a standalone manner – Tech Management has no “Skin in the Game”. If you have seen managers use a lot of complex words to discuss a simple problem, then you’ve witnessed the concept.

.Growth gets stunted without ‘Skin in the Game’. This is one reason I keep away from Management.


.

.Back to the subject …

The promotion was assumed to be a reward. When in fact, it was a punishment for me !

.

Point being – understanding the Nature of Rewards is Important.

.

Rewards

.

Let us look at the various ways organizations “reward” employees:

1.Paying more $$

Performance bonus, salary hike, etc.

2.Promotions

A better job title, more responsibilities, bigger team to supervise

3.Social stature

Appreciation months, employee of the month programs, social credit – LinkedIn appreciations etc.

4.Team building

Bowling alley, dinners, parties, and other activities etc.

.

But each reward has a “next level” effect. Such an effect, while important, is less understood. Here is another story to drive the point …

.

Social outcast :

The Director of an org told me that he wanted to “overload his employees”.

He explained – since single youngsters did not have many other things to do. They could ( and did ) contribute more to the organization.

One of his “bright boys” was a guy named Nikhil. The poster boy did nothing but work – day and night, weekdays and weekends. Of course he was rewarded for the work with faster promotion and salary hikes.

.

Sounds fair right ? But, devil in the details. Remember the “next level” effect …

.

Message to team was – work 24*7, to get your deserved appreciation.

.

Few could compete with Nikhil’s work ethic. So, most did not get their deserved promotions. Many quit.

Also, once the team found out that Nikhil was responsible for them receiving poor bonuses. They implemented social sanctions on him. In turn, this brought down team productivity.

.

Of Course the director did not realize that – Nikhil had become a social outcast.

An Outlier + Comparative rewards = Reduced productivity of the team

.

Rewards cannot be comparative to an outlier.

Once again – Visibility (nature) of Rewards is Important..

.


My take : Being the nerd that he was – rewarding Nikhil in silo would’ve been a better idea.


.

.

Nature of punishment

.

Exactly the same way, the “nature of punishments” matters too.

.

Incorrect punishment :

I’ve written about a techie called Rahul. He was a Director at an organization and an underperformer. Of Course he wasn’t able to deliver on his tasks. And then used to choose the next best option.

Get help in the name of “teamwork”. He called his subordinates and asked them to put in long hours. Rahul’s team bore the added burden of what he failed to do.

.

Rahul was reprimanded. But he did not care.

His behavior invited social sanctions. But he did not care.

.

Why ? Wrong type of punishment.

.

What would’ve happened in case Rahul wasn’t helped ?

He would’ve had to stay up long nights, all by himself. Right ? I bet he would’ve either quit or made corrections. And everyone would’ve been better off.

.

You see – The nature of the punishment matters.

.

Wrap up

.

People want ( or avoid ) different things …

Challenging work
Work from home flexibility
More time
Compensation
Job Titles
Social status and more.

Achieving cooperation requires the “right incentive or disincentives”.

As they say : To each thy own !

Excerpts from: The Art of Strategy

.

Next, we discuss the “Clarity” of punishments/ rewards.

The post Achieve Co-operation | Nature of (dis)Incentives appeared first on techwiddeep.com.

]]>
https://techwiddeep.com/incentives-for-cooperation/feed/ 4 1214
Achieve Co-operation | Clarity https://techwiddeep.com/clarity-for-cooperation/?utm_source=rss&utm_medium=rss&utm_campaign=clarity-for-cooperation https://techwiddeep.com/clarity-for-cooperation/#comments Mon, 15 Aug 2022 14:33:13 +0000 https://techwiddeep.com/?p=1222 How “Clarity” helps achieve cooperation at IT companies.. Intro . Achieving cooperation and delivery is a priority for IT companies. . As part of this blog series, we look at “systematic” concepts that help achieve cooperation. We’ve looked at … ●Detection of behavior, and ●Nature of rewards . Today we talk about … . Clarity… Continue reading

The post Achieve Co-operation | Clarity appeared first on techwiddeep.com.

]]>
How “Clarity” helps achieve cooperation at IT companies..

Intro

.

Achieving cooperation and delivery is a priority for IT companies.

.

As part of this blog series, we look at “systematic” concepts that help achieve cooperation. We’ve looked at …

.

Today we talk about …

.

Clarity

.

What are the boundaries of acceptable behavior ?

What are the penalties of cheating ?

.

An employee might …

Go by his hunch
Fail to make a rational decision. Or
Might cheat

.

Either way, the boundaries of acceptable behavior should be clear. So should the consequences of cheating.

.

The VP at an org hired new employees saying … “The project should be delivered in 1 year, else you are not needed”. The result ?

Many quit
Those that stayed did NOT need a reminder for their work ethic

.

The team became efficient and high function. Each team member was clear about the consequences of what came next.

.

The most important part of the demand was that – Expectations were crystal clear.

.

The idea seems simple enough. Is it though ?

.

Calculated risks

.

Pankaj is a troublemaking engineer. He does the work, but loves to try out new things. As with anything else, some of his experiments do not end well.

Should he be reprimanded or encouraged ? Clarity once again becomes important.

.

.

How would you clarify the limits of acceptable behaviour for Pankaj ? What risks are okay ??

Is it okay to mess in a …

Production env, during low client volume days, with permission ?
A Non-prod env, with permission ?
Any env
As long as they are monitored ?
As long as they are tracked via a ticket ?
So long a thorough analysis is done ?

.

The above scenarios make it complicated to figure out limits of acceptable behavior. Therefore these are NOT good standards.

.

Complexity makes it easy to cheat AND let good behavior go undetected.

.

In other words, boundaries of acceptable behavior need to be simple, for them to be Clear.

.

Surprises

.

Surprises are stress tests for clarity.

Certain surprises ( due to lack of clarity ), bring up interesting situations. This is best described with real examples. So, here we go …

.

A sudden penalty killed the most productive organs of a team.

.

Work the weekend :

We were working on a deadline, a difficult project and all. Days were long and weekends passed without rest.

There were few who contributed NOT ONLY to their own work but also to others’. Helping others meant, sometimes missing our deadlines. Overall deliverables were high, even though some work was delayed. This was because we believed …

Team deliverables are MORE important than personal deliverables.

.

We were helping the organization and there wasn’t a disincentive.

.

Suddenly – we received an email from a department head. The people with delayed deliveries couldn’t take any leaves ( weekends, holidays etc. ).

It was a punishment of sorts. The result ?

.

The top 10% stopped helping others. We now focussed only on our work. Helping others, at the cost of our time, became a disincentive.

Personal deliverables became MORE important than team deliverables.

.

Some deliverables became timely ( from us 10% ). But, the overall deliverables of the organization sank.

.

What was more important ? Individual deliverables OR Team deliverables ? I believe both are important. But the point is … leadership lacked clarity.

This lack of clarity killed the most productive organs in the team. (and further delayed work).

.


I let the leader know that his decision had a side effect. But stubbornness is a leadership virtue. Had our friend read a bit of Game Theory, he would’ve understood the idea.

.

Also, surprises have undercurrents.

During this crisis, the biggest cheaters worked hard and got (justifiably) rewarded. But created discontent among the best performers.

Such disharmony is never good for team camaraderie..


.

Wrap up

.

Clarity is important to achieving cooperation at IT companies.

Limits of acceptable behavior and consequences of cheating, need to be clear to a team member.

.

With muddying factors like …

Processes
Deliverables
Timelines
Risks
Experiments etc.

.

Techies need to be clear on what could result in a reward/ penalty.

.

Excerpts from: The Art of Strategy

.

Next, we look at the Certainty of a reward/ penalty.

The post Achieve Co-operation | Clarity appeared first on techwiddeep.com.

]]>
https://techwiddeep.com/clarity-for-cooperation/feed/ 1 1222
Achieve Co-operation | Certainty https://techwiddeep.com/certainty-for-cooperation/?utm_source=rss&utm_medium=rss&utm_campaign=certainty-for-cooperation Mon, 15 Aug 2022 14:45:49 +0000 https://techwiddeep.com/?p=1230 How “Certainty” helps achieve cooperation at IT companies.. Recap … . Achieving cooperation and delivering is a priority for IT companies. . As part of this blog series, we look at “systematic” concepts that help achieve cooperation. We’ve looked at … ●Detection of behavior ●Nature of rewards, and ●Clarity . Today we talk about …… Continue reading

The post Achieve Co-operation | Certainty appeared first on techwiddeep.com.

]]>
How “Certainty” helps achieve cooperation at IT companies..

Recap …

.

Achieving cooperation and delivering is a priority for IT companies.

.

As part of this blog series, we look at “systematic” concepts that help achieve cooperation. We’ve looked at …

.

Today we talk about …

.

Certainty

.

Employees should have confidence that good behavior will be rewarded. And that bad will be punished. Higher such confidence, higher the cooperation.

.

Lucky draw :

I worked with Infosys for many years. Many times, my performance was pretty good (staying modest) . However, I wasn’t always rewarded.

Reasons ?

Allotted appraisal slots were filled.
A new rule got created adding to the requirements.
My manager had other favorites.

.

After 100% of hard work, my chances of getting rewarded stood around 20 – 30 %. This was a de-motivating factor. Not just for me but for all others too.

.

After a few iterations … Did we work hard anymore ? Ofcourse not !

.

The same thing happened with punishments. When I was lethargic or wrote poor quality code:

My stature could get me off.
I could butter my way out.
After months, the incident could just be forgotten. (appraisals were a 6 monthly affair)

.

Once again – After 100% of laziness, my chances of getting punished stood around 20 – 30 %.

.

Did the system encourage lethargy ? Ofcourse !

.

Certainty triggers co-operation. And uncertainty triggers collusion.

.

Countries behavior

.

International agreements like Trade fall under the purview of WTO ( World Trade Organization ).

When one country complains that another has cheated on a trade agreement. Example …

Donald Trump complains that China manipulates its currency to help their exports. But nothing happens.
India ( land of Basmati and Turmeric ) had to fight a legal battle for the copyright of the same products.

.

Then, the WTO initiates an administrative process that drags on for months or years. Facts of the case have little bearing on the judgment. It usually depends more on international politics and diplomacy.

.

Due to the uncertainty and delay – such enforcement procedures are NOT effective. The same goes for techies at IT companies.

.

Penny wise Pound foolish :

I worked with a software company. They promised me a ‘reward’ for delivering a difficult project. End of the project, they suddenly came up with an excuse – financial troubles.

PS: My reward would’ve been in the range of ~5000 $.

.

I moved on to greener pastures. But the company did not realize that – most employees had become sluggish.

Employees weren’t certain whether their work would be rewarded anymore. This reduced overall productivity. The loss could be quantified in the range of ~1,000,000 $.

.

The org saved some thousands, only to lose a million ! Pennywise, pound foolish !

.

Wrap up

.

Certainty is important. My probability of being punished drives my risk appetite.

The same rewards/ penalties with a high degree of certainty drive higher co-operation.

20 % chance of reward – Hard work doesn’t seem enticing enough.
20 % chance of punishment – Laziness doesn’t seem problematic enough.

.

Excerpts from: The Art of Strategy

.

Next, we look at the Size of a reward/ penalty.

The post Achieve Co-operation | Certainty appeared first on techwiddeep.com.

]]>
1230
Achieve Co-operation | Size https://techwiddeep.com/size-for-cooperation/?utm_source=rss&utm_medium=rss&utm_campaign=size-for-cooperation Mon, 15 Aug 2022 15:14:43 +0000 https://techwiddeep.com/?p=1237 How “Size of a reward/ punishment” affects cooperation at IT companies.. Recap … . Achieving cooperation and delivering is a priority for IT companies. . As part of this blog series, we look at “systematic” concepts that help achieve cooperation. We’ve looked at … ●Detection of behavior ●Nature of rewards, and ●Clarity ●Certainty . Today… Continue reading

The post Achieve Co-operation | Size appeared first on techwiddeep.com.

]]>
How “Size of a reward/ punishment” affects cooperation at IT companies..

Recap …

.

Achieving cooperation and delivering is a priority for IT companies.

.

As part of this blog series, we look at “systematic” concepts that help achieve cooperation. We’ve looked at …

.

Today we talk about …

.

Size

.

The size of a reward/ penalty should be proportional to the size of the contribution ( or lack thereof ).

Let a thief go, and he steals again. ( If a punishment is too small, it isn’t effective. )

Kill a thief and other thieves start killing. ( If a punishment is too big, it triggers worse behaviour.)

.

A general rule is – Keep it conservative.

A reward should be large enough to encourage work.

And small enough to avoid Greed and Pride.

A penalty should be large enough to deter the behavior.

And small enough to keep the players in the game.

.

Too Big rewards

.

Big rewards have blindspots – Greed and Ego; for starters.

.

Handling success requires humility. The feeling of “I have arrived” can ruin careers, projects, and more.

Fall from grace has been common among Kings, Presidents, Bureaucrats, Politicians, Film Stars etc. While talent and hard work do take them to the top. Many aren’t able to handle success.

Richard Nixon wasn’t able to handle his success.
Some Indian bureaucrats/ politicians aren’t able to handle their power.
The founder of Sarvana Bhavan chain of restaurants wasn’t able to handle his money/ power.

He was convicted of murder.

Current affairs:

Aneesh Grover ( co-founder of Bharat pe ) seems to have been unable to handle his success. (read news for details)

.

It takes a special someone to keep working with the same humility despite the rewards. ( not because of them )

.

Double salary :

Priyanka joined as a Business Analyst with a product-based organization. Bright and energetic, she did good work and was noticed.

Next appraisal – she was promoted to a PM role and her salary was doubled.

Priyanka had arrived !

.

Everyone noticed that – suddenly she became ‘edgy’. Her requests turned into orders and remarks. Certain tasks suddenly became ‘beneath her’.

The gaps became someone else’s faults. Statements like “Why should I” and “Not my responsibility” were thrown around. Her projects started lagging.

A few more months and the blue-eyed PM quit the organization. ( or was asked to )

.

The size of the reward was too big and too soon for Priyanka. She could not handle her salary and stature. Since the organization rewarded her disproportionately. So, The organization was as much responsible for her failure, as was Priyanka herself.

.

Too Big penalties

.

Why are terrorists and murders arrested ? and not just shot dead ?

Think about it … even when the guilt is clear, why are convicts arrested and taken to court ?

.

To answer this question … let’s think about what happens with the other protocol. What if all terrorists are to be shot dead ?

Example… IS chief ‘Abu Ibrahim al-Hashimi’ blew himself up instead of being captured. Why ?

He knew that the penalty would be the biggest, so why not create the biggest damage.

.

When people have nothing to lose they go all-out crazy. In the process, creating much more destruction.

.

Point being : Too big penalties damage more than they help.

.

The same goes for software engineers. If an engineer is threatened to be fired at the first production bug, then:

No engineer would be willing to work. Or
Projects will never get completed

.

If you understand the above, it is because you know that bugs are always possible. That being the case, there should be practical sized punishments for successful deterrence..


.

Imagine a guy working on back-to-back production issues. Would it make sense to punish him for being late to office ?

Ofcourse not !!

Someone fighting for survival should be cut slack on hygiene practices.

I would get pissed at such a reprimand. And might plan to leave the organization altogether.

.

Reminder on the general rule : Keep it conservative. Meaning – Penalties need to be of the smallest effective size.

.

Right size ??

.

How do we know the right size of a reward or penalty ? To be honest, I am not fully sure. But, I know a working analogy.

When eating, how do I know when I am full ? Well, my stomach tells me !

Too much food and my stomach complains.
Too little, and it demands more.

.

All I have to do is Listen !

In the same way, all I have to do to get the right-sized reward for a techie is – See/ Listen/ Perceive.

.

Wrap up

.

The Size of a reward or penalty is the next piece of the puzzle.

.

Like eating, too many rewards lead to obesity, and too little to anorexia.

.

Both conditions cause detriment to health. Not only of the techie but also of the organization.

Proportionate rewards and penalties are the next pillars in an IT organization.

.

Excerpts from: The Art of Strategy

.

Finally, we look at the Repetition of a reward/ penalty.

The post Achieve Co-operation | Size appeared first on techwiddeep.com.

]]>
1237
Achieve Co-operation | Repetition https://techwiddeep.com/repetition-for-cooperation/?utm_source=rss&utm_medium=rss&utm_campaign=repetition-for-cooperation Mon, 15 Aug 2022 15:46:23 +0000 https://techwiddeep.com/?p=1243 How “Repeat engagement” affects cooperation at IT companies.. Recap … . Achieving cooperation and delivering is a priority for IT companies. . As part of this blog series, we look at “systematic” concepts that help achieve cooperation. We’ve looked at … ●Detection of behavior ●Nature of rewards ●Clarity ●Certainty, and ●Size . Today we talk… Continue reading

The post Achieve Co-operation | Repetition appeared first on techwiddeep.com.

]]>
How “Repeat engagement” affects cooperation at IT companies..

Recap …

.

Achieving cooperation and delivering is a priority for IT companies.

.

As part of this blog series, we look at “systematic” concepts that help achieve cooperation. We’ve looked at …

.

Today we talk about …

.

Repetition

.

Why is most food of a poor quality at tourist attractions ?

The food is NOT cheap. In fact, it is sometimes outrageous for the value.

.

We purchased from a family grocer for almost 40 years !

Received the best quality products, with the best discounts. All without asking !

.

I am sure you’ve already figured it out. Key is – Repetition.

.

Let’s say a restaurant serves a poor meal at Jaipur’s Hawa Mahal. ( A famous tourist destination. )

They serve 50 tourists today. They get 50 new tourists tomorrow !

Because there is no repeat-business. There is hardly any disincentive for today’s poor service.

.

Let’s say I was one of their scapegoats – what am I going to do ?

Don’t come to the diner again ! My chances of visiting the tourism destination are nil either way.

.

The opposite is also true. Our family grocer had a big disincentive while cheating. He would’ve lost repeat business.

PS : Repeat business is so important that it is a success metric !

.

The prospect of future losses offsets the temptation to cheat now.

.

Tech Companies

.

The same goes for techies. Continuation of engagement/ employment drives, quality of work.

.

If the org plans to let me go, then
Rewarding me is an avoidable expense.
Penalizing me is an avoidable hassle.

.

Same way, if I plan to move on, then
Incentives are a lucky lottery.
Penalties are forgettable mishaps.

.

In the same breath –

If I wish to stay with an organization for long. I will avoid cheating and want to deliver.
If an org intends to retain me for a length of time. It will avoid cheating and reward well.

.

Litmus Test

Repetition is used as a litmus test, across the industry.

.

For an Organization :

If an employee has had a lengthy tenure with an org. Then, he has almost certainly performed above a threshold. In other words, the lengthy tenure proves –

Ability to deliver, and
Dependability

Both valuable.

.

The lengthy tenure guy HAD to deliver at some point. Whereas, the fickle one might’ve only hopped from one responsibility to another.

Using tenure as the proof – a less talented but loyal employee is more valuable. This compared to a sharp but unreliable one.

.

To employees switching jobs every year :

Your experience does NOT prove your abilities. So – unless you prove talent another way, you are of poor value to an org.

Good orgs will avoid you; despite your talent.

.

For an Employee :

If an organization has had a lengthy employee tenures. Then, it has almost certainly done some things right. Therefore, the lengthy tenures prove –

Good leadership/ management. and,
Care

.

A reliable but low-paying organization is more desired than a high-paying unreliable one. The good org HAD to deliver quality management at some point. Whereas, the other type orgs might’ve simply churned employees.

.

If business at an organization is expected to grow. And if the organization wants to cheat its employees. Chances are that – it will recognize that it stands to lose more in the future due to the collapse of the cooperation. Therefore, it will be hesitant to cheat.

.

To orgs churning employees :

Your total number of years does NOT prove your standing. So – unless you prove management abilities another way, you are of poor value to an employee.

Good employees will avoid you; despite your high salaries.

.

Other factors – Economy

.

Other factors like the economy also impact the repeat engagement.

.

During times of economic booms, employees will be tempted to ‘move on’ i.e. end the repeat engagement.

The increased salaries at new organizations give them immediate upside. While the downside hits them only in the future. ( in case their new org terminates the employment )

.

The opposite happens during economic downturns. Employees want to keep the engagement, while organizations dictate their salaries/ rewards.

.

Review sites

Technology has played a BIG role in creating repetition. Think of review sites – Yelp, Glassdoor, Google reviews, Amazon reviews, Goodreads etc.

They create a memory of past behavior. Thus giving us repetition, where there was none.

.

Earlier –

An organization was free to cheat its employees and let them go. The new employees would be a fresh batch of tourists to be cheated again !

Now –

Reviews on Glassdoor create a memory of the cheating. New employees hesitate to join a toxic organization. The organization loses good talent and therefore business.

Essentially – The prospect of a future loss offsets the org’s temptation to make silly decisions now.

.

Thus, review sites have increased the cost of stupidity. By introducing repetition.

.

Wrap up

.

Repetition is the last pillar to achieve cooperation at an IT company. Choices between a long term and a short term game become very different, for the same players.


..

.In the spirit of repetition. Once again – these are the 6 pillars of getting cooperation at an IT org:

Quick Detection of behaviour
Nature of rewards/ punishments
Clarity
Certainty
Size, and
Repetition

.

Missed timelines, delayed projects, stretching programs, over-budgeted portfolios are common. Equally so within the IT industry.

While systems like – Performance reviews, HR practices, rewards etc help. Any system that misses either of the above pillars becomes dysfunctional.

.

Hope the clarity helped. Happy team building !

Excerpts from: The Art of Strategy

The post Achieve Co-operation | Repetition appeared first on techwiddeep.com.

]]>
1243