Career 3: Another key decision point in my career (v1.0)

My most stressful job was at a major company in the 80's. I was a lead relational database engineer. We had just acquired the technology from a startup. The company had pretty much bet its whole future on a next generation cutting edge computer. There was huge stress to produce and get the best RDBMS and RDBMS features on that machine we possibly could. The place was a bit of a zoo because nobody really understood the code well because it was newly acquired, but there was huge pressure to roll out the machine as soon as possible. I had more responsibility as a lead than many others especially as I understood it better than many others.

This was the time I interviewed in Hawaii for a federal job (not really any other opportunities in Hawaii). My wife was clamoring to come back to Hawaii. The Hawaii boss pitched hard, but I told him things were very stressful where I was, but I could not run away. My career would have been very different if I had moved back to Hawaii. Even with all the stress I was under I made the right choice!!

 I tried to hang on, but it was too much for me. I left for the startup from which we acquired the relational DBMS software from. I worked on a small 4GL project at the startup by agreement with the president (I did not want to work on the DBMS since I did not want any possibility of a legal issue with my previous company that acquired it by working on it). The 4GL project was a really fun project that I worked on with one other engineer. We were given carte blanche!! After we completed the project after a year, I shifted to a more established company. I worked on a huge 4GL project at that new company. When that project did not go forward, I returned to the original company to work on the relational database product we acquired earlier. By then that company was back to normal in my view. I did some of my best technical work on the RDBMS in my career in this second stint. It still is my best technical work in my career, period. 

 Some of the things I technically led the team on for the internals of the DB were the following. It was a very productive period.

1. concurrent B-trees indexes and Row level locking. 

2. Static and fuzzy backup, Log archive, Dual logs, Multiple logs and roll forward recovery

3. Database replication.  

4. Versioned reads and isolation levels and dirty reads and cursor stability

5. XA (for two phase commit) and also group commit 

6. High performance sort. 

7. Hash index

8. Parent child relationship and referential integrity

 That company was a superb company (benefits, product quality, compensation, work environment, treatment of human capital, size and stability, etc). But that period during the rollout of the new machine was very difficult for both the company and its employees. After I returned, I stayed there for a long time where the most notable jobs were the RDBMS, Distributed OLTP monitor global architecture consultant, and HA (High Availability). In the HA lab, I got my first US patent. Those three jobs were smooth with no real issues for me cropping up throughout. In-between these, I quickly ran through two other jobs at this company (in DB partners lab and as a product consultant), but very quickly realized it was a total mismatch with my skillset and quickly exited. I stayed with the company until my skill set no longer really aligned with the company's direction. I left in 2000. 

 It was smart that I removed myself from an environment that did not work for me until the environment changed for the better in my view. A friend helped me with the decision to remove myself. That was a spot-on decision!! I remembered this lesson. 


Comments