I am urging you to do so, since atleast then we can move ahead and accept that this is the state of affairs. If we don't do that it will not be clear weather this is a problem or just an un-interesting discussion.
I am urging you to do so, since atleast then we can move ahead and accept that this is the state of affairs. If we don't do that it will not be clear weather this is a problem or just an un-interesting discussion.
I arrived a month and a half ago, and am leaving tomorrow.
I haven't been able to make much sense of the current state of the application, which constantly needs new features (to be delivered yesterday). For each task you need to dig into countless files with a filename of ~50 characters, often with several classes, with a size ranging from 300 to 7000 (for a few files) lines. You are asked to copy paste existing solutions and modify some things to make it work for your feature.
The code is a total undocumented mess (the copy-pasted javadoc all over the place doesn't help at all, since it's only rewording the function/variable name.. when it's not utterly outdated). Dead code everywhere, hundred of warnings (they use the closure library) due to bad code annotations (which do nothing at all), unreachable code, mistakes (comparing to NaN), or code doing nothing (often due to a type annotation mistake).
I'll try to find another company, maybe with a recent project or an old one which they are rewriting _right now_. My current company's pitch was that the goal was to migrate the current application (in closure library) in something like react, but the reality was something else entirely and I doubt they will begin the transition any time soon.
My previous companies were having similar issues (I left my previous company because the main project was falling appart and the CTO was refusing any attempt to rewrite the product, even if it's beginning to cost less to rewrite it entirely than to meet the clients needs by adapting the current version..), and I really hope I'll find myself in a situation where I am not silently swearing a dozen time a day at poorly written code.
And the norm seems to be that code always turns into a monster that nobody can control. At best we seem to test pre and post release and hot fix things till they work satbly.
I feel like it's a widespread problem but since there is some "shame" associated with it people don't want to talk about it and accept it.
But that is silly because, considering that the problem is widespread it must be super hard to get right. So, by accepting that it is hard to get right, at least we will not say that we are stupid for getting it wrong.
Anyways, this is my attempt to really understand the true state of things. (And what better platform than HN)