Ask HN: What is development like at your company?
What is your tech-stack like? What languages/frameworks/tools do you use, and are they working for you, and why? What is the “common practice” like at your company? Do people write and/or design code well? Do you test and document code? What is the culture like? Do people communicate effectively? Are there deadlines? Is management reasonable?
I'm asking because I work at a very "well established” business software company and the reputation far surpasses the reality in my opinion.
Firstly, the software blows... super hard. Most of your product is written in JavaScript (front-end and back-end). Of course, this is a complete nightmare as we have over 500 active developers on the project. Not to mention the fact that at most 5% of the code is commented or documented in any way whatsoever. This makes maintenance, code-reading, refactoring, and testing almost impossible. Broken hacks are fixed with more broken hacks, and most of our "business data" is passed around as raw JSON objects who's structure you can't possibly know until you evaluate the objects at runtime. Perhaps the worst part is that very little of this code is tested. In fact, large areas of our project are hovering around 50-60% code coverage, and these are areas that are responsible for handling our customer's financial data. The part that irks me the most is that most of our additions and new features are merged without any unit or integration tests whatsoever. Instead, we relegate all our interns to do manual testing on our product on a weekly basis, so when bugs make it into production it's their fault for not finding them, never mind that new features are often not even manually tested by the people who developed them. Yes, you heard that right, senior developers write features without any unit tests, throw up some manual test plans, and then hand them over to the interns to test.