Categories
Software development

When companies vastly overpay for acquisitions

Reading Time: 2 minutes

I can think of two scenarios: one is acquisition is done via cash; another one is done by stocks (and the stock itself is overvalued).

The yardstick of overpayment

======

EBITA or EBITDA (or use Charlie Munger’s word, replace it with bullshit)

I know from my own software industry experience, 10x sales (or revenue) is usually a fair price.

Example:

Francisco Partners Completes Acquisition of Sumo Logic: Pursuant to the terms of the definitive agreement announced on February 9, 2023, Francisco Partners has acquired all outstanding shares of Sumo Logic common stock for $12.05 per share in cash, valuing the company at an aggregate equity valuation of approximately $1.7 billion.

SUMO LOGIC HISTORICAL REVENUE (Zippia)

Sumo Logic’s peak revenue was $300.7M in 2022. The peak quarterly revenue was $79.8M in 2022(q4). Sumo Logic’s revenue increased from $155.1m in 2019 to $300.7M currently. That’s a 93.91% change in annual revenue.

If my memory is correct, they were losing a lot of money too.

Note each industry has its own metrics (or yardsticks).

In the below example, I assume Square and AfterPay is in the fintech space, and Disney is in the content creation (movie and animations to be specific), and park/entertainment business.

Two Examples

Scenario 1: Disney buying 21st Century Fox, US $71.3 billion

Scenario 2: Square Inc (now Block) bought AfterPay for $29 billion

(Reuters) The $29 billion deal in 11 weeks: how Square bought Afterpay

(paymentgenes) The Real Reason Why Square is Acquiring Afterpay

Both scenarios didn’t play out well. Both acquirers’ stocks ($DIS; $SQ) were down since the acquisitions. Btw, I googled those two deals’ closing date.

For Block (Square Inc., I used 02/01/2022 per this source, noted another source too)

I think, maybe we should track the performance between the day before deal was announced until now.

======

Consolidation in the Production Monitoring software space

In addition to Sumo Logic, we have

New Relic (by Francisco Partners and TPG for $6.5 billion) –

Revenue in 2023 (TTM): $0.96 B
According to New Relic ‘s latest financial reports the company’s current revenue (TTM) is $0.96 B. In 2022 the company made a revenue of $0.88 B an increase over the years 2021 revenue that were of $0.75 B.The revenue is the total amount of income that a company generates by the sale of goods or services. Unlike with the earnings no expenses are subtracted.

Splunk (Cisco): this is after Cisco Completes Acquisition of AppDynamics (2017)

Categories
Software development

Software or technology interoperability

Reading Time: 2 minutes

Blue and green bubble divide

As mentioned here in the CBS News YT video – “Breaking down the Apple antitrust lawsuit”.

iMessage vs text message. I noticed some issues in the group text messages in the past: for example, I can not add someone on Android to a group text. If one of the member in the group text is on Android, we need to resend via text message (default is iMessage), and so on.

Recently I asked my daughter (14 year old) about the group text chat as well, and she said: we prefer iPhone, but we don’t exclude Android people too 🙂 I guess they are the inclusive generation.

This reminded me of the CAD interoperability product: I worked on long time ago, it translates from competitor’s file format to ours. Also around the time, I recall it was very hard for us to compete in the 3D CAD market place (we were No. 2 in terms of market share). And our executive’s marketing strategy: we are more open (than the big bad No. 1 guy). See some similarity with Apple here? 🙂 Btw, I recall it was not easy to develop the translator, both from technical and business perspectives.

Buy your mom an iPhone.’ – Tim Cook’s 5-Word Remark Could Curse Apple’s iPhone (newsweek)

Social Stigma

Apple’s ‘green bubble’ Android texts fuel ‘social stigma,’ DOJ claims in landmark suit

More about Anti-Trust

I had to admit I am not a legal expert. But one thing to note this is not isolated to Apple. This Yahoo Finance article Justice Department files antitrust suit against Apple has a graph says Regulators vs Big Tech that summarized all the US regulators actions against the big tech currently.

Why Google Is Being Sued by the Justice Department | WSJ (YT Video)

Why the DOJ and 16 states are suing Apple in a landmark antitrust case (PBS Newshour, YT Video)

United States v. Microsoft Corp. (Wikipedia)

Acclaimed tech columnist Mossberg says the DOJ’s claim of an Apple monopoly is ‘laughable’ (Walt Mossberg)

Walter Isaacson: The law says you can’t use market dominance to then dominate an adjacent field (YT Video): I was in the Mossberg camp until Walter mentioned the “dual mandate” of DOJ/FTC regarding the anti-trust laws: protect both competition and the customers. In terms of competition, he said, a company that uses its dominant position to get dominance in tangential areas, that company may have violated the law.

Some of my thoughts on the topic in Chinese (linkedIn)

很多年前在一个CAD/PLM 软件公司打工。我的东家在三维CAD行业里是老二,有一段时间公司很紧张,因为汽车行业里面除了美国通用汽车有不少公司要换老大的软件:福特说要换,丰田后来还是选了老大的软件(世界上最大的两家飞机制造公司也用她家的),尼桑(日产)是我东家非常想保住的客户。后来我们那里的人想到一招:就说我们比她们更open, 她们是封闭的(就像今天美国司法部的AT部门的人说的那样)。题外话:大概也是二十年前,苹果用我们的软件设计她们的产品,她家当时的当家花旦是iPod. 前提是我们的三维设计软件在她家的Mac 上运行。#DOJvsApp || Back to software or more broadly the technology business, building better #mouseTraps or #moat if I could use #warrenBuffett words, is one important measurement of success #yardstick

More on Proprietary Software (Wikipedia, note the vendor lock-in as well)

Categories
Software development

UnitedHealth Group Change Health hack

Reading Time: 4 minutes

(03-02-2025) Wikipedia – Change Healthcare 2024 Cyberattack.

(hyperproof) Understanding the Change Healthcare Breach and Its Impact on Security Compliance

(12-19-2024) How the ransomware attack at Change Healthcare went down: A timeline (03-02-2025) It seems this article is no longer available.

(04-09-2024) Change Healthcare faces second ransomware dilemma weeks after ALPHV attack || So in summary, ransomware attack poses two threats: 1) Loss of data, if they bad guys encrypts the data; 2) Leak of data, in the case a company or an organization (the victim) restores the data from backup (without paying the attacker), the attacker can threat to leak the data online (or sell the data to other bad guys in a black market etc.), so basically this is what happened here.

(Update 03-24-2024) It seems Panera Bread, which probblay has 2,000 stores in the US, had just experienced a similar issue.

Panera Bread app and kiosk down since 03-23-2024 afternoon
I am speculating the root cause is ransomware attack

I recall few years ago Panera did have an incident – Panerabread.com Leaks Millions of Customer Records

(03-09-2024) I first heard about this a few weeks ago, something like below:

美最大医保网遇网攻或来自外国黑客万余药房受干扰

Note it was not in the mainstream news at least not covered heavily in the network TV and so on, initially. Until its impact are felt by both providers and the patients. Below are some more recent coverages.

Cyberattack Paralyzes the Largest US Health Care Payment System – The New York Times || https://twitter.com/ryanstellar/status/1763666449988751373 || https://twitter.com/zackkanter/status/1765170835919143293 || 

https://twitter.com/Lis86274333/status/1763351768002355431 || 

EXPLAINER: What to Know About the Change Healthcare Cyberattack | Health News 

Change Healthcare has acknowledged the hack, which reportedly affected billing and care authorization portals. It’s led to prescription backlogs and missed revenue for providers, posing potential threats to worker paychecks and even patient care.

“Our experts are working to address the matter, and we are working closely with law enforcement and leading third-party consultants such as Mandiant and Palo Alto Networks on this attack against Change Healthcare’s systems,” Change Healthcare said. “We are actively working to understand the impact to members, patients and customers.”

(My take, lesson learned: cyber security best practice; collect the data that’s only necessary) 

“The Russian-speaking cybercriminal gang known as AlphV and Blackcat claimed responsibility and said on its darkweb site that it exfiltrated 6 TB of data in the attack against Change Healthcare.”

NPR: Health industry struggles to recover from cyberattack on a unit of UnitedHealth  

PBS has a few reports on that as well: such as this one – How a cyberattack crippled the U.S. health care system

For IT and security professionals

YT Video: 🔒 Ransomware Chaos -Part 2: UnitedHealth Drained…Dishonor among thieves🦹🏻 – The Briefing (thanks to Ryan⭐ Stellar and Mike Martinelli for the YT video; same below)

YT Video: 🔒 Ransomware Chaos: UnitedHealthcare Under Attack by BlackCat Hackers!…youtube.com (this is part 1)

BlackCat Ransomware Group Implodes After Apparent $22M Payment by Change Healthcare – Krebs on Security On March 3, a BlackCat affiliate posted a complaint to the exclusive Russian-language ransomware forum Ramp saying that Change Healthcare had paid a $22 million ransom for a decryption key, and to prevent four terabytes of stolen data from being published online.

https://twitter.com/zackkanter/status/1765170835919143293 (technical explanation of EDI and Change Healthcare)

Related Incidents

This Change Health incident somehow reminds me of the SolarWind hack a few years ago. It seems Microsoft has some more work to do, as they are still a popular target for hackers.

SolarWinds hack explained: Everything you need to know2020 United States federal government data breach – Wikipedia Microsoft exploits || SolarWinds exploit

A ‘Worst Nightmare’ Cyberattack: The Untold Story Of The SolarWinds Hack

“The tradecraft was phenomenal,” said Adam Meyers, who led the cyber forensics team that pawed through that tainted update on behalf of SolarWinds, providing details for the first time about what they found. The code was elegant and innovative, he said, and then added, “This was the craziest f***ing thing I’d ever seen.”

The hackers didn’t do anything fancy to give them the domestic footprint, officials confirmed. In fact, they just rented servers from Amazon and GoDaddy.

SWI stock has not done too much in last 5 years mostly due to this attack.

Also the Kronos attack which received less media attention (somewhat similar to the UnitedHealth hack). I recall this incident because around at time I was working on a Kronos based project (app, the official name of the app is Ascension Nurse Center of Excellence). It didn’t work out due to various reasons, after the company sunk millions of dollars on the project.

(Update 2026-05-09) Kronos data breach: what to know about the ransomware attack and its consequences || The Kronos Ransomware Attack: Here’s What You Need to Know

(The Garmin breach/incident happened in the year 2020, Velo) How did the Garmin cyber attack happen, and what does it mean for users? || 6 Things to Learn from the Garmin Security Breach (Terranova Security)

Some other question: 

Legality aside, paying the ransom encourages the hackers? See also Incident Of The Week: Garmin Pays $10 Million To Ransomware Hackers Who Rendered Systems Useless. But from a business’s perspective, they are usually between a rock and a hard place: meaning if they don’t pay, they usually don’t know how long it will take them to recover the data, if at all; or if they pay up, they essentially are working with the bad guy (or encouraging the bad guy).

Can we ever negotiate or trust the hackers (the bad guys)? || This somehow reminded me of my personal experience when I was working for one of the major credit card company (their loyalty and rewards platform), and at one time I was assigned to investigate the root cause of an incident in which the bad guys (or girls) logged into some cardholers’s loyalty redemption website quickly after the website launch, and redeemed their points for air tickets or hotel bookings. At the time, amid the tedious work, I asked myself: how come in this world there are evil people like that?

Another question I had for the UnitedHealth Group (Change Healthcare) hacking: if this is the notorious Russian hacking group BlackCat, can the US government do something about it (hint: retaliation)?

Categories
Software development

Setup RDMS for learning

Reading Time: < 1 minute

I am teaching a database course this semester at a local university. It seems install MySQL on Windows is not very straightforward. Something I didn’t realize as personally I am on the Mac for a while.

I looked around and summarized the following choices.

  1. Local MySQL vs online databases – Top 9 free online databases  

2) Other: Univ of Arkansas (I have not verified) – “Instructions on how to use web-based free-hosted RDBMS.zip” – from Instructor Resources

3) AWS – RDS

Please be aware of the potential cost! Similar for Azure and GCP. Setup alert or monitor so that we don’t get surprised.

Or Google cloud (again a sample cost alert)

Similar for Azure

Rule of thumb: when you give the credit card information to a public cloud provider, always set a budget, and a cost alert. Because we don’t want any surprises in the bills.

Personally if I am the person who is in charge of a company’s cloud bill, for both dev (experiment) and production. I will be like Cory Quinn.

Categories
Investing Software development

Bentley Systems $BSY

Reading Time: 2 minutes

(Update 04-18-2024) Reuters – Exclusive: Bentley Systems explores options amid takeover interest, sources say

(Update 02-27-2024) The Q4 2023 results is out. The IR webpage has the conference call. Learned a new buzz word “digital twin” last few days, 1st from the Unity Software (which just had a bad quarter, btw), then confirmed by Bentley Systems. I tend to agree with Reddit on this one. It’s somewhat like everyone is talking about AI or Gen(erative) AI – which made Google to put up Gen AI in its search too. I like substance, not fluff 🙂

(Original) Some people may know I worked at CAD industry for a while: I actually explained a bit here (search for “my 1st employer”).

I heard about Bentley Systems many years ago, but until fairly recently, to be precise in year 2020, it came to public market. Here is their IPO prospectus filed in Sept 22, 2020. In last year or so, I traded and still own some of their stocks $BSY (note this class of stocks has less voting power compared to the Bentley families, and this is quote common in tech stocks, btw. More explanation in the next paragraph). And in last few days, the stock dropped quite a bit and I added a bit more in the last few days too.

Their main competitor includes another former employer of mine: AutoDesk $ADSK. I didn’t stay at AutoDesk as long as the 1st employer of mine. Unlike AutoDesk and many medium sized software companies, Bentley has a small quarterly dividend: 5 cent per share. Note the Bentley families still has the voting power. It’s probably one of the few family controlled software companies in the world. Many software companies are public and has no controlling shareholder: with the exception of Alphabet (Google), Meta Platform, and Hashicorp $HCP etc. Founders usually have control of the company via Dual Class Stock. In a way Berkshire Hathaway has a similar structure too: A share has way more voting power than B share, and Warren Buffett and his family has the control.

It seems they just exceeded $1 b annual revenue in year 2022 (here are the link to their annual reports in recent years).

Future and risk factors

Family control. No check and balance from outside shareholders. Note this is true for many companies. The exception is usually when a stock underperforms the market for a long time, an activist shareholder may emerge, e.g. Nelson Peltz vs. Disney at this time.

Likely lower growth or even negative growth in China, both in terms of R&D and end market. This is similar to many west/US tech companies. APAC (Asia Pacific made up about 18% of the revenue, so this is still manageable).

US recession, or no growth. Possible, but software companies usually sell products in multiple years, eventually the growth will come back, even with the economy cycle.

Competition. AutoDesk is the main competitor. Also one source said Siemens has 14% stake in Bentley. Also, do you remember MetaVerse?

Categories
Software development

My Database experience

Reading Time: 4 minutes

I started software development journey from Oct 2000 in the US (my LinkedIn profile here), for about 8 years my main focus was the C++ CAD software development, and I didn’t use much Database or SQL in my day job. I did take a graduate level database course when I was in Rolla in year 1999 or 2000.

I started to use database, SQL and Oracle PL/SQL for my day job from 2010, when I started working for a small consulting company that does work for the Union Pacific Railroad. The application I worked on uses quite a bit of Oracle PL/SQL partially because during the time of development (around 2000 to 2003), PL/SQL was the “new and hot”, and also Oracle itself was the mainstay in the enterprise application/database development platform too. Later on at Mastercard I learned the Master Reward System (or platform) used PL/SQL extensively too, as one of my colleagues put it, it’s really the heart of the system. This is also confirmed by one of the former developers’ LinkedIn profile (John McGuinness).

  • Lead developer and technical owner of back end of MasterCard Rewards Loyalty System.
  • Used C++, Korn Shell, PL/SQL, and Java in a Sun Solaris Environment.

Btw, once in 2005, I recall my “formerly IT/software engineer” mortgage broker and I had a quick talk after the closing of the house (condo to precise), and I recall he was doing VB (Visual Basic) before his mortgage career, and we tend to agree “software development using database as backend” is funner. Green is always greener at neighbor’s yard. I think it applies in the software development field as well 🙂

My own DB experiencesWorking in progress as of 01-14-2024

Below are some of my observations on the relational DB in various production environments across multiple applications.

Unidev (contractor for Union Pacific Railroad): year 2010, when I 1st touched the DB, Oracle SQL and PL/SQL, C++.

Unigroup (contractor): IBM DB2.

Arch Coal (now Arch Resources): I used SQL server, it’s a small app in which I created both backend (C# .NET web services), and front end (iOS on iPad).

Btw, for own mobile apps, iOS apps, I used parse and google firebase (no longer active maintained).

Mercy: I used both Oracle and MySQL (we have different apps using different databases for backend).

Mastercard: Oracle (the main backbone for the MRS, see below), and Postgres (a small database for the Pay with Rewards app), this is the most substantial app I ever worked on – Mastercard reward system (MRS), Exadata: which is the high performance Oracle/Sun Sparc dedicate DB hardware. At MC I had opportunity to work on some performances issues on our SQL, both in the web application and the batch application, including promotion.

I also touched upon the Oracle Advanced Queues for the Pay with Rewards app I mentioned above. Overall I gained most of my DB exposure when I was working at MC. Before working at MC, I think I consider myself still a newbie on the DB (I was more confident on the java, and web apps dev side of things), after the MC gigs I was much more confident on both the DB as well as web admins (Site Reliability Engineering, using Google’s term).

A very subtle yet interesting observation: at MC they have teams such as software engineering (dev team), business operation (Technical/Production Support + Site Reliability Engineering), Database Engineering (DBA team) etc. At my current place we have dev team, Dev Tools team (somewhat like Dev Ops), dedicated Production Support team, and Data Management team (DBA team). Overall from my experience, only the MRS at MC has a dedicated application DBA. Most places don’t have a DBA with in-depth DB knowledge.

Ascension: MySQL on GCP, GCP big query 

Enterprise Fleet Management (current employer): Oracle and Postgres (no production yet), some issues around DB (frequent locking, and concurrent DB connection exceeding alert limit, this happened at MRS too). 

When the system hangs due to the exhaustion of database connections (basically DB server got overloaded), DBA’s usual workaround is killing the blocking session. In the extreme cases, they have to restart the DB server – but this could cause outage if there is no secondary DB server. 

DBA stands for database administrator (see Oracle’s DBA definition).

Application DBA is a DBA that has knowledge on the application database, in other words, he/she may be familiar with the data model in the database, and sometimes could provide valuable input to the performance and optimization of the database design, and database queries.

Outage

To avoid outage, we could have a primary and secondary database and database servers. Basically during normal operation, we use the primary DB server. Keep in mind the data is sync’ed (one way) from the primary to the secondary all the time (sometimes this is called data replication on Oracle). In the event, we need to take the primary DB server down, we can start up the secondary server 1st, switch the application DB connection to the secondary server, and this way we avoid an outage. When the primary DB server is available again, we can cut the application traffic back, keep in mind, when we switch back and forth, we need to make sure the data is kept up to date: for example, the case of switching back to the primary server, we need to replicate the data from secondary server to the primary server 1st. There are existing software solutions for that, e.g., Oracle GoldenGate is a popular choice for Oracle DB replication.

Web app <=> [ Primary server ] => secondary server

Some tips:

Always backup before deleting.

In addition to relational DBs, we need to be aware of object datastores (sometimes people called NoSQLs) such as MongoDB.

We can do Entity Relational (ER) model using MySQL Workbench for the WordPress MySQL DB – I think the Data Modeler role at MC (and other large organizations) may used similar tools to check the data modeling. It seems many small organizations don’t have this capability. The ER model is a very good way to introduce new developers to the system.

Advanced Topics

My take on the multi-tenancy

Categories
Software development

When do you need to buy insurance?

Reading Time: 4 minutes

I think this is a very common thing: at the car rental counter, the clerk asks “do you want to buy the comprehensive insurance”, and/or buy the full tank of gas, so that you don’t need to fill up the car when you return it.

My answer is always, no. Except once I probably bought the gas when I was on a business trip, and the reason, was the trip before that one, my colleague and I tried to fill up the gas at the last minute, and rush to the airport terminal. We didn’t buy the gas for that one.

In America, we always need to buy the liability insurance for car/driving. Comprehensive insurance is required if we have car loans (the loan company or bank need that). I think the requirement is similar for the home insurance.

For rental car, I believe liability insurance from our own car transfers while comprehensive/collision don’t. For the latter, I do have a credit card that offers “primary insurance coverage” – basically means if applicable, the credit card issuer can pay for the damage of rental car. The card has an annual fee.

Self Insure

This March, we rented a violin for our younger daughter, as we plan her to take the violin lesson from April. The violin shop asked us maybe helpful to add the violin to the home insurance, or buy the insurance from somewhere. The violin is worth about $950, btw. My wife bugged me a few times about insurance. And I said we are self insured. Meaning, if our daughter accidentally damaged the violin, I will pay for it.

Years ago, I worked for a coal mining company, and the company self insures all employees health insurance too. They still have a health insurance company to administrator it, but the mining company takes all the risk. It was year 2012, and coal mining company’s deals with quite big amount of money, in terms of the equipment and mining side of the things. Note this has been changed in last 10+ years, as the natural gas replaced coal as the main load for power generation, and the renewable energy (wind, solar) grew significantly too.

I assume this likely included nuclear power

Warren Buffett on when to buy insurance

Warren Buffett, who is both the greatest investor of our time, as well as an expert on insurance, explained the need about insurance at about 44 mins mark of the video (he talked about 5 minutes on the topic). Below are most quotes.

There are two reasons a company (or a person) needs to insurance. The main reason to buy insurance, is to protect yourself from the loss, the loss you are unable or unwilling to take or bear yourself, this could both be objective or subjective. Sometimes a manager could ; the second reason is the price of insurance is favorable to us.

YouTube: BRK 1995 annual shareholder meeting

What insurance do I have

I have a term life insurance. Bought in year 2011. It’s 15 years. I think it will be more expensive if I buy now – due to aging. At the time I bought the policy, my older daughter is one year old and my wife didn’t work outside home. Another reason is I was changing jobs, and the life insurance policy at work place cannot be carried over between jobs. A side note, after I left my 1st employer in the US, I learned from my former boss once at the Macy’s that one of my coworker died suddenly, and he was younger than me. To make things worse, in his benefits selection, he seems didn’t select the company paid life insurance policy (or in other words, he didn’t opt-in, there was no cost). It’s just overall a very tragic situation. That’s the main reason we need to have a life insurance on the bread-winner.

I have car insurance (comprehensive) and home owner insurance (mortgage requirement). The cars are paid off, but comprehensive insurance helps in the case if we got in car accident: this actually happened last year when our 2012 Camry was totaled, and the insurance company seems worked for us well. They raised the premium afterwards, and I just switched to new insurance co. One thing I personally recommend, is the roadside assistance and the rental car reimbursement option, if applicable. I use AAA for roadside assistance, and I also work from home (we have 2 cars, both WFH) and that’s why I don’t add “rental car reimbursement”.

Health insurance through employer. This is common in the US. Another option is Healthcare market place (Obama care).

Bonus question: Extended Warranty (EW)

Our current 2 cars (one Camry and one Sienna) are both preowned certified. One common question is do we buy the “extended warranty” from the 3rd party provider (dealer always pushes for this). I bought it for Sienna in year 2013 as I just wanted to leave. I thought it was probably $1,200 for 7 years (100,000 miles, whichever comes first). The only time I used it is for roadside assistance (I do have AAA too, but wanted to use the service from Extended Warranty once. If I had saved the money myself, I would probably paid off the cost associated with the squirrel (rodent). Last year, with the preowned Camry, the dealer offered EW again. I recall it has tiers, and the cheapest is over 7k, and I declined.

Categories
Career Software development

IT and Software Employers introduction 圣村码工和挨踢主要雇主介绍

Reading Time: 9 minutes
Anyone knows what this is? It’s a punched card for computer in the early days.

As the old Chinese sayng goes, 下棋找高手,弄斧到班门 (baidu)下棋找高手,弄斧到班门。—-中国科学院 || Basically one needs to get trained properly or work at a place that has some good technology and process so that he or she can really understand what’ the proper way to do the work, and work with people.

Besides knowing the “what”, “why” and “how”, a few other benefits (some are not that obvious) include the prestige comes with a brand name employer (let’s just say Mastercard), as well as the confidence as well as experience, that one will likely gain from working at a place that have outstanding engineers and people all around. Those are probably similar reasons that parents want send kids to good schools (from K-12 to college), as well. Personally I felt I gained most of my confidence in life, during my middle school years at Zhenhai Middle School.

Re: confidence (or nervousness or introvert/extrovert). Now I think about it more, I tend to believe this is probably both a person’s personality, as well as a person’s background (life experience). I know I mangled a lot of things together here. But I have observed a lot of people over my school, career and friends circle. One thing we can agree is confidence is quite important in life and work. Also, whenever possible, I encourage my kids, my significant other, my friends, my students or my colleagues to help their confidence.

Got right training at the beginning of the career

My own exp at the my 1st employer (Unigraphics Solutions, EDS PLM Solutions, UGS, Siemens Industry Software, same company the name change was due to the ownership and corp brand change), and later Mastercard seemed confirmed this Chinese saying. I learned much on software development while at the UGS. And later at Mastercard I learned about customer production support, production release and deployment, at other places it could be DevOps team or Site Reliability engineering type of work, at MC it’s called BizOps, and I also acted as tech lead role there.

In case you are wondering what exactly UGS does, after reading the Wikipedia entry here. I would say it’s a software company that was founded 10 years before Microsoft was founded in 1976, at one time created its own OS and hardware, and those folks know a thing or two about software and software development. At the very beginning of my career, I saw the “punched card” above at one of the spare room or storage room in year 2000/2001 when I was working there. That’s how the software was written and integrated then 🙂

Job Title

One thing I noticed there is it’s quite hard to be promoted to the “Senior Software Engineer” title at UGS. It needs both years of work, and the recommendation of colleagues. Note it was in year 2000 till 2008. In other words, unlike the job title nowadays, “Senior Software Engineer” really means someone who is senior and has a lot of experience. Nowadays though, in many places, big or small, the lead/staff software engineer, principle software engineer are fairly common. So there is that. At one time, I ever got into a discussion with two “Senior Director of Software Engineering” at Ascension, regarding the difference of lead vs staff software engineer, and my preference for lead vs staff. Maybe we should all go with the “Member of Technical Staff” which is invented in the Bell Labs (I assume).

The next job I would like to have, if I decide to do more serious engineering work anyway – probably some company like Apple, or more likely a remote friendly company who is a both serious/meaningful and fun/rewarding place, since I don’t have any intention to move to the bay area or Austin, where the engineering center of Apple is.

My observations on different workplaces in the area

Without that being said, I did worked at quite a few places in the St. Louis area, mostly as full time employee, but sometimes as IT contractor, and I believe it’s probably a decent idea to share my own observations and experiences. Note I intended this to be a straightforward (or honest) opinion from me, as practical as possible. You may refer to glassdoor.com or indeed.com to get others’ opinions. Disclaimer: when I evaluate a company, please note I am not evaluate its employees. For the most part I am talking about the culture and the management style.

======

Ameren: I interviewed and got an offer there once. But unfortunately the offer didn’t come as speedy as the one below. And at the time I already accepted Ascension’s offer. Later I got one more interview (probaly in year 2019) but that one didn’t yield an offer. If there is 后悔药,I may go there 🙂 One of the few commercial companies in the area that offers pension and I believe their pension is solid. We are not ditching electricity, even with all the EVs, right?

Ascension: they are the parent org of the largest catholic hospital chain in the US. In terms of all hospital chains, I think they are distant 2nd behind Kaiser Permanente whose presence is mostly in California and west coast. Ascension’s presence is mostly around mid-west, Texas and east coast from New York to Florida. I worked there for about 2.5 years. I should probably stick around a bit longer to make sure all my 401k (403b to be precise) vested. In general healthcare is not the most agile or nimble place to work, and Asc is no exception. In the time I was there, and after I left, I heard some crazy stories in terms of the corporate strategy shift, hiring/firing, and so on. The direct reason I left Ascension was I got a bit tired of my architect job, and felt I like go back to do more coding.

This is one of the projects I have some contribution (not much direct contribution, more like a caretaker, or pseudo type of role). The company probably spent millions of $ on the app, but I noticed it never really went to production. It was an executive’s pet project. The project has some dependencies on back end from a vendor. A new software development manager was hired before I left, and dare I say his performance testing plan (or scenario) was not realistic either. That being said, the dependencies on vendor for web service and data are also a big unknown at the time.

Btw, this reminds me it the failure rate on healthcare project is high, another one is MyMercy at Mercy that I worked on in year 2014 and 2015. One question I have: what’s the percentage of Software Dev project failure rate in the healthcare industry? Do we have any survey or data?

Bayer (formerly Monsanto): I interviewed there twice. No offer. One employee and one recruiter left me impressions. After the 1st interview (more than 10 years ago), the employee pointed out a silly mistake in my resume, it was a typo. None the less, very few people in America will point out your mistake, mostly because they don’t care or they feel not polite to do it. But no feedback means no improvement. The 2nd time, the recruiter Ray is a great person. Bayer (formerly Monstanto) is the pioneer in terms of AWS adoption in the area. Their CTO left for another company in the area (RGA – Reinsurance Group of America).

Charter/Spectrum: their main IT office is now in the Riverport Drive, it’s actually the very 1st building I started work for Unigraphics back in year 2000. I got one interview there (forgot which year). The tech lead (or architect) was pretty much a snob (over the years, I have done quite a few interviews, on both sides of the table. I did many tech interviews when I was working for Asc). I recall another similar situation at Reuters back in year 2009: a guy was quite arrogant there as well.

Centene: another healthcare place, this one is Medicaid insurance and some Obama care. I interviewed there twice: different time and for different positions (dev at their Chesterfield/Town and Country office via recruiter, and DevOps at Clayton). Overall I felt both teams are quite arrogant and obviously there was no match. The 1st time they left me there, when I was supposed to meet a director. But the director never showed up. At the same interview I learned a bit about how they handle multi-tenant for their core app (Medicaid management), essentially they setup one code and one DB (Oracle) for one state. They probably have a dozen or 20+ states and thus they have 12 or 20 code bases for each state. Obviously in a company like MC this would be laughable and will not work for the loyalty platform I worked on: we have way more than 20 customers. Incidentally at Asc, we did one database for one customer for the Covid Fast Screen app for our customers too (one code base though).

Later (last year or two) a friend (a former colleague) asked me whether I was interested in their team at Centene. I politely declined 🙂 Also Centene, along with Express Script and MasterCard, used to be on the top 3 hard working (or expect you to work hard) workplaces in the area. The rest of the places are mostly reasonable: 9 to 5 means 9 to 5. I worked at MC and I can say most positions involves some work: or some politics. Btw, regarding overtime, I talked a bit here, and also please refer to this Tweet (in Chinese) which is line with my view.

https://twitter.com/435hz/status/1739270769954427077

Cigna (formerly Express-Script): did I say it’s one of the hard working places in the area? The rumor I heard from a friend is at one time they pushed him (or his coworker) to work 120 hours per week. Horrendous place even for a few weeks, right? The reputation may have changed since the Cigna acquisition. I never worked there or interviewed there. But I almost got one interview there once (in year 2019?).

https://twitter.com/RyanReeves_/status/1742349693827620950

Emerson Electric (or the new co formed after White Rodgers, their former climate control division): I applied there once through recruiter (the White Rodgers or Sensi division, now called Copeland). That’s about it.

Enterprise (now official brand is Enterprise Mobility): it seems they don’t treat contractors very well. I worked there at year 2013 as contractor and testify 🙂 I was told it’s going to be contract to hire, which is also my intention and expectation. At one time, I even got a manager. Note at Enterprises contractor doesn’t have a real manager (other than the person who approves the timesheet and thus the paycheck). But the project got cancelled in the middle, the only little nice thing is they gave me two weeks notice. In the US, it’s common practice employee gives 2 weeks notice before leaving, but the employers usually don’t. They could give severance pay etc., but they usually ask the employee to go immediately.

I work for them as employee now (different divisions inside the company), and I think they treat employees decently well. Hopefully a decent place to wind down one’s career and so on (maybe I should delete this comment 🙂 I think Reed Hastings of Netflix summarized this “family vs sports team” for workplace very well 🙂

Equifax: onsite interviewed there once (2018). No offer.

Government and government contractors: the federal government, from the Department of Agriculture (USDA), Federal Reserve, to USPS, to Boeing and their vendors. No comments. Never interviewed or worked in that sector. My gut feeling is they are similar to Enterprise, from organization point of view (big bureaucratic).

Mastercard: probably one of the highest paid place in the area (if we considering the bus and 401k match). On the other hand, you know the money is not free, right? Expect more stress from the work (both technical work and politics). Once I worked 2 out of 4 days in a thanksgiving break. That alone was the direct reason I got into fight with my wife. Money cannot buy everything. Remember their ads slogan: There are some things that money can’t buy; for everything else, there’s Mastercard

Mercy: they pay better than BJC, may be similar to Ascension. It has similar problems as Ascension. Although my boss and coworkers are all good people.

Panera Bread: interviewed there twice, neither yield an offer. Should I say they are snob (I mean the corporate people, not the store people). The 2nd time interview was done via Zoom, as it was during pandemic. Their CTO is from Mastercard and it seems he brought over quite a few people over (is it legal?). Store people are all nice, and once I even saw the interviewer and their former CEO and founder Ronald M. Shaich at their Sunset Hills store.

Remote or WFH: this is a viable option now, because there are many companies that welcome remote workers in recent years, initially due to the pandemic, and now it’s become a norm for many companies now. Some companies that are remote friendly include Affirm: maybe they are looking for people from Square and Mastercard? 🙂

Siemens: I heard in recent years they are not as good as 23 years ago when I started there. It seems they are all work from home now and the Riverport Drive office (built in year 2001) is on the market. And it seems they rarely hire any entry level people in recent years.

Square Inc. (Block): the payment company founded by Jack Dorsey and Jim McKelvey. I actually interviewed for a DevOps (SRE) position a few years ago. A decent company, and the payment industry is a good place to be in terms of job stability and pay (think Mastercard :-).

Unidev: my suggestion is don’t go there. I went there due to quite unique circumstance 🙂 They do have one fantastic person though (hint: her current title is “Secretary & Treasurer”).

Unigroup: I worked as contractor there. They treated contractors better than Enterprises.

======

Bonus questions:

Is it okay to step back or go down career ladder in one’s career?

The answer is yes. You do what’s suitable for you and your family. Listen to your heart, and equally important or not more, listen to your spouse or better half 🙂 In fact I heard from one of my favorite (former) coworkers and he did that once in her career. And yours truly made this move in year 2021, too.

Some Interview Advice

https://twitter.com/buccocapital/status/1740006937826300184

Starting salary

Also it seems the starting salary for the entry level position in the area doesn’t go up much. My starting salary for software engineer in fall 2000 was $56,000. And nowadays I think the average is probably 60 k or 70k. If we consider inflation in last 20+ years, the starting salary didn’t grow. That’s probably many young people left for Silicon Valley, Seattle, Dallas, or Austin for jobs.

Some final food for thoughts

Categories
Career Software development

FAQs on work: tenure, job hopping, purpose of work, and overtime

Reading Time: 2 minutes

General Rule of Thumb on the length of work tenure

A while ago, in year 2010, I got this rule from a friend. My friend spends most of time doing IT/software contractor work, long term contract though. I asked him “how long should I stay at this place because there is a senior guy seems doesn’t like me”, to be precise, he was trying to get me fired. My friend told me the rule of thumb below.

Try to stay at full time (employee, or permanent) position for one year. Stay at a contractor position for 6 month or more. Some old fashioned people may call out you as “hopper” or “job hopper” if you have a lot short stints in your resume.

And below is my recent observation and my quick thoughts. When interviewing for my current job, my big boss (my manager’s manager) did raise the tenure (short work stints) and I was prepared. “see, boss, I worked for this credit company for almost 4 years”. And I also worked for my 1st employer for 8 years. All are facts, but I stayed not just due to loyalty 🙂

What to look for in a job?

I think the below tweet (or X) summarized it well. In other words, our day job is to bring the bacon (or bread) home. 用中文讲就是养家糊口。I am discussing a related question (overtime 加班)more below.

Overtime 加班

It’s not worth it. Ideally we should avoid overtime as much as possible.

Work smarter, not harder. –quote one of my former coworker at Unigraphics (UGS, EDS PLM Solutions, Siemens Industry Software)

I have been in the US for a bit over 25 years now. From time to time, I need to go overtime for the work. From my early days in the graduate school doing research for the professor, to work as progammer for my day job. Most of times it’s either voluntary, or I have no better other choices.

I got sick when working for Mercy:

One night it’s already past 10 pm. But there is some urgent work or expectation for me to “solider on”. I was trying to fix some problems as a result from the security scan.

Later, once, I still went to work when I was coughing pretty bad. Eventually I went to urgent care due to that. It took me a while to recover from that.

Categories
Career Software development

How to survive as an IT contractor?

Reading Time: 4 minutes
When I was little, my maternal grandma sometimes would say my elder bro is suitable for a carpenter due to his calm demeanor. This is just a picture of a carpenter (not my brother)

Surviving as an IT, especially a software developer contractor is not easy, from my personal experience and observations. I have mostly been an employee (sometimes people call it full-time), with a few stints as a contractor (my LinkedIn profile here). I worked as a contractor mostly because I needed to bring bread (or bacon) home, or in one case I needed to make a switch from software consulting back to a developer job.

Second class citizen

This reminded me of “second class citizen” label which I think it is how many H-1B visa holders were treated in this country. I think being a contractor is not easy in the sense of job security. I have my share of misery when working as a contractor – in some cases, the misery was not directly related to the fact of being a contractor, in other cases, it was. For example, once I made a dumb (but honest) mistake during my testing, I sent out 4 testing emails to real customers, the issue was somewhat like this HBO integrated testing email incident (I got the HBO email btw). I think that’s the main reason they let me go shortly after. When you think about it, do you really want to work for such a place (given choices)? In this case, I was the scapegoat for the incident, just like the “intern” was the scapegoat for the HBO email incident.

I think of this topic because, in the current project, I have been working on for the last 2 years, we have tons of contractor turnover, and it seems to me mostly the termination was initiated from our side. But I don’t have any input due to my career level or title. This is also one major downside of being a contractor – easy for a vendor to terminate, and also in some cases a contractor will become the scapegoat for some mishap or mistake in the project.

Sometimes or a lot of times I felt contractors are basically second-class citizens in the company. Personally, I don’t want to treat contractors like that. I am just stating some observations I have. There are exceptions: if the contractor is high skilled, works for the client for a while, or has a good relationship with senior management.

There are usually two scenarios in which a company hires a contractor, staff augmentation, and project outsourcing (the vendor company will staff a complete project team in this case). I have seen terminations in our current project for both scenarios.

In the past, in year 2015, when I was with Mercy Health, and working on the MyMercy project. And one day (April 2015?) we laid off all the contractors on the project due to the change of project direction.

Back to the Carpenter analogy, I do think there are still things a contractor can control in terms of her/his job security. I don’t think the contractors who worked on the MyMercy project have much control. But for the current project that I am a part of, it seems the people who were let go have one thing in common: basically in one occasion or another, they pissed off “the boss” (I would not name the names obviously).

When my maternal grandma joked that my elder brother could be a carpenter. Note carpenter is like a contractor or a skilled professional in the rural area where I grew up. I recall one carpenter built the 1st multiple stories house in our neighborhood: at that time, it cost more than 10,000 Chinese Yuan (RMB), and it was a fortune for all of us at that time. My dream then was to make 10,000 Yuan 万元户. Now I think about why my grandma said my brother could be a carpenter (and she didn’t say I could), one reason I think is probably I was not as calm as my brother 🙂

In the US though, probably applicable in China nowadays too, besides doing quality work, improving marketable skills, etc. A contractor needs to be a little bit more outspoken, and at the same time not piss off the client, the manager, “the boss” etc. The last part is really an art and not science. As one of my colleagues likes to say: one needs the “read the room” skills 中文就是察言观色的意思吧。Last but not least, something I learned over the years, is we all need to have some stories to tell (#storytelling). This is helpful or useful sometimes during job interviews, think of the behavior questions the HR or managers sometimes would ask: tell me a challenge that you encountered recently, how you overcame it, etc. Make sure you have those in your inventory and use them as you see fit.

(Update 02-07-2024) Personally I don’t recommend work as contractor – especially if one is the sole bread winner for the family. I understand in the US all employments are AT WILL, in theory an employer can lay off full time employee at any time (vice versa). || There are a few cases I think it’s okay to work as contractors: 1. 家里等米下锅;2. If it’s a consulting company such as WWT, Accenture etc., because they have bench time. Also they can put a contractor (consultant) at another client due to their connections. My 2 cents.

除了上面说的那些情况,我觉得应该有一些人适合做contractor / consultant. 主要有两类人:1,脾气特别好的人;2,技术特别牛的人:这个必须是marketable skills. 或者两个因素都具备。我都碰到过这样的人:现在做的项目里就有同时具备这两样东西的人。我觉得这两个因素我都不具备.

引用朋友的一个评论 “Contract 在某些方面确实不如FTE, 但是对于急于找项目经验的 ,或者急着找份工作的 还是可以考虑的” – 我的回复:“对。我本来也想加上去的。”

(Update 04-03-2024) I just came across that I talked about this in year 2016 too.