I am a Software Developer for a large firm for about 5 years, since I was entry level. Recently, I have the opportunity to work on a high profile project.

My wider 27 member team is split into 3. The other members of my team have over 10 years of experience.

I have come to the realization that my team does not how to code professionally. I see this because they do not apply any form of extensive design, like design patterns, splitting responsibilities into separate classes, to avoid spaghetti code. Dont test code or do not properly test code, and general discussions go around in circles not in any direction that would provide value.

I am not considering sharing my thoughts with the team, and I always assist on development and consider them my team and protect it in any way.

I am just very confused, how did they get here and how are they not considered a risk? I am a very humble person that would not throw someone under the bus, but this environment was not expected.

I always thought I would be surrounded by more competent people and learn.

I am just surprised and wanted to hear your thoughts.

closed as unclear what you're asking by Philip Kendall, IDrinkandIKnowThings, paparazzo, gnat, Dukeling Dec 6 '17 at 8:50

Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 4
    Everybody coded like that forty years ago. By ten years ago only lazy incompetents coded like that. – A. I. Breveleri Dec 6 '17 at 5:51
  • 2
    This kind of open-ended question isn't very well suited to this site (and will probably get closed for not being answerable), I think you'd have better luck in a general discussion group like one of the Slack teams listed here techbeacon.com/46-slack-groups-developers – Mel Reams Dec 6 '17 at 6:15
  • @Kilisi no, good developers already existed in the nineties. Even if the GoF didn't exists, you could still take a shit of paper/diagram software and think about how you will do things before getting into the code. What Quincy Adams say could be resume as "there is no/a lack of sofware engineering" and lack of testing. Good testing teams already existed in the XXth century (however a good testing team has always to be separated from the developers, period). – Walfrat Dec 6 '17 at 8:14
  • 1
    Question, discuss and propose and motivate improvements, or ignore, don't criticise. – Dukeling Dec 6 '17 at 8:54
  • 1
    @Kilisi Remember that all the GoF did was give names to existing patterns, they didn't invent them. – Daniel Roseman Dec 6 '17 at 16:17

There's no coding standards and no real development process/cycle happening here - it seems like your team-mates are just translating requirements into code.

You need to start with your team leader and ask whether it's worth enforcing some coding standards and test strategy as a way of improving the efficiency of the team. It doesn't have to be a lot to start with.

You might want to ask to lead a small team on a small project and put some processes through a trial period and see how that goes.

Of course, this all depends on the mind-set of the team leader, and the company as a whole (they might be perfectly happy with late/underperforming projects).

If you get nowhere and you're still frustrated at the lack of structure, consider moving on. Don't let these other guys drag you down.


First you need to list what are the real flaws of your team, what cost money, time to your company, and give you and your coworker headaches.

Usually this boils down first to a lack of automatic testing in the most "annoying" part of your application, by "annoying" I mean : (either or both)

  • Test that specific part of your software manually take times
  • Some specific part are unstable and a lot of bugs come from it.
  • Some specific part is critical and any bugs cost a lot of money or reputation to your business.

So suggesting to add high level non-regression testing will very likely a good start and the effect will be visible immediately to everyone.

For coding standards : it depends, if the code of your teammates is already readable then don't insist too much on it, if it is not try to ask them to be more carefull on naming and leave some comments where it is needed.

Remember the two following principles : Keep It Simple & Stupid, and You Aren't Gonna Need It.

The solution that you suggest must resolve an existing problem and must be simple. Otherwise you will only add complexity to your system while not even addressing the current flaws.

Not the answer you're looking for? Browse other questions tagged or ask your own question.