Wolters Kluwer

 Wolters Kluwer

So, I’ve started at Wolters Kluwer—weird name, I know. I was brought on as a Perl dev (backend, build/release, Linux admin), but suddenly I’m being tossed into the deep end of a super complex frontend.

The real kicker? Everyone assumes I’m already a pro at this stuff. I never claimed to be, but the pressure is definitely on. Here’s the "short" list of things they expect me to just know, even though I’ve barely touched most of them:

  • The Frontend Maze: JavaScript, jQuery, Ajax, SPAs, route handlers, and event listeners.

  • The "Ovid" Ecosystem: It’s a massive app with a million ways to do the same thing. If you don't know the exact "UI path flow," you’re just chasing ghosts.

  • The Tooling: Black Duck, Google Analytics, Open Telemetry, and Jenkins pipelines.

  • The Meta Stuff: JIRA's crazy process flows (there are like 20 "similar" dropdown options for one task), Redis, and deep HTML/template structures that go way beyond basic Perl.

The Time Zone Struggle 

Most of the team is ET or Europe, so I knew I’d be waking up early. But it turns out the actual Perl experts are in Eastern Europe or India. I get maybe an hour or two a day to talk to them before they sign off. If I miss that window? I'm stuck until tomorrow.

The "Security Theater" Laptop 

They sent me a Windows laptop (first red flag: no power cord in the box). As a Linux guy, it’s painful. I have a killer Ubuntu setup with dual 32-inch 4K monitors, but I can’t RDP into the work laptop while the VPN is on. So, instead of using my pro gear, I’m squinting at a 14-inch screen with a trash webcam.

The security makes no sense. I can’t RDP from my local LAN, yet I can access Outlook, JIRA, and BitBucket from the open internet on my personal rig. They even blocked the Teams PWA on Linux recently, so I’m stuck using a browser tab.

The Dev Environment (or Lack Thereof) 

It feels intentionally broken. I’m stuck with outdated Amazon Linux boxes or AWS Workspaces with ancient tools. There’s a Docker container in the works, but it’s not ready. Plus, we have to use shared "service accounts," so forget about customizing your environment.

We’re also fighting "security theater" permissions (umask settings) constantly, and the dev environment doesn't even match production, so reproducing bugs is a nightmare. Oh, and I’m not allowed to do my own performance testing. I just get "pretty graphs" from a separate team instead of actual logs or memory data.

Honestly, it feels like I'm being asked to build a skyscraper with a plastic hammer while my hands are tied.

Decades-old software

Delusion is running an old version of Amazon Linux, Version 2. I've been asked to look into a newer version of Amazon Linux, Version 2023. In looking deeper into the whole dev environment, I've learned that WK is using an ancient version of Apache 2.2, which was EOL in 2017, and an old version of OpenSSL (1.0.0), EOL in 2015. These are decades-old software. Let alone, they should be moving to nginx. ADE, the department that seems to do system prep and admin, has some Chef things, but they are only for the Int and QE environments, and even they are not 100% yet. Seems ADE does not have the bandwidth to support dev, and yet we don't have the permissions to do our own. Apache is run from a "devshare" mount point, which has some interesting history. But the fact that they are running on decades-old software that has long since left EOL is very telling.

Servers use NFSv3, which is 30 years old. NFSv4.2, which is only 10 years old and is the latest version of NFS, is not in use AFAICT.

Also, Apache2.2 EOLed 1/1/2018 versus Nginx, which is still active.

Poor man's version control

Apparently, WK uses URLs that include things like swap_a or swap_b or swap_new_a, etc. Essentially a poor man's version control. It's a mess!

Not tracking key metrics

I've been chasing a pretty consistent memory exhaustion issue that has been found in production but not reproducible in lower environments. I suspect that one of the processes forks children but fails to reap them. It's possible that this is contributing to the memory exhaustion. Now they use fancy tools like NewRelic, which produce pretty graphes but key metrics like how many processes are in the process table aren't even thought to be captured?!? But the graphs look pretty!


Comments