I just finished an internship and accepted a full-time offer at the same company. I don't have any previous experience in web development, so I'm a bit uncertain about their coding practices. Is what I'm seeing normal or outdated? Here's a breakdown of their front-end stack: they primarily use Vanilla JavaScript (mostly ES5), jQuery, Bootstrap, and Google Closure. They also utilize the Google Closure Compiler for some type safety and rely on JSDoc annotations instead of TypeScript.
For example, their JavaScript looks something like this:
```javascript
goog.provide('src.js.CompanyLibrary.ui.form.AbcFormGrid');
/**
* u/public
* u/constructor
* u/param {string} id
* @extends {AbcComponent}
*/
function AbcFormGrid(id) {
abc.base(this, id);
/**
* @protected
* @type {string}
*/
this.containerClass = 'h-100';
// rest of the class
}
/**
* @public
*/
AbcFormGrid.prototype.showAllRows = function() {
const data = this.grid.getContainer()['bootstrapTable']('getData');
const length = data.length;
for (let i = 0; i < length; i++) {
this.grid.getContainer()['bootstrapTable']('showRow', { index: i });
}
};
```
They also shy away from ES6 features and do not make use of classes or modules, instead relying on prototypes and multiple levels of nested inheritance. They have created their own framework around this system, which includes a class that holds string constants used in building queries.
I'm unsure whether I'm just not familiar enough with the industry standards or if there might be some legitimate concerns about these practices. Any insights from those with more experience would be greatly appreciated!
4 Answers
That ABCConstants setup is a bit odd, and it might be worth asking your team why it’s set up that way. The rest of the code is indeed pretty outdated, but it works. Just prepare yourself to adapt once you find a new position with more modern practices!
Honestly, that stack is pretty outdated. Back in the day, using Closure Compiler and the way they structure code was considered advanced. But compared to modern standards, it seems archaic. If you switch jobs in a few years, you might have to unlearn these old practices to get up to speed with contemporary JavaScript.
Corporate environments often prioritize maintaining legacy code, so it's not uncommon to see outdated practices. The cost to modernize systems can be high, and many companies choose to train new hires on the existing code instead of overhauling everything. So, while it might feel unusual, it might just be how corporate structures operate.
You’re looking at a pretty classic case of old-school coding. It’s not "wrong," but there's definitely a learning curve involved in maintaining legacy systems. Gaining experience with this might still be beneficial, especially in understanding large-scale JS applications without frameworks in the mix.

Related Questions
How To: Running Codex CLI on Windows with Azure OpenAI
Set Wordpress Featured Image Using Javascript
How To Fix PHP Random Being The Same
Why no WebP Support with Wordpress
Replace Wordpress Cron With Linux Cron
Customize Yoast Canonical URL Programmatically