I recently started a new job as a programmer in a small team working on a web-based app. The code base has been built up over 10-15 years, so there is a fair amount of cruft and code that could be modernised. However, it also suggests that the team members don't have a particularly high skill level; there is a lot of data structure juggling that could be reduced to a couple of lines, no real understanding of object-oriented coding, lots of "best practice" violation, and no real application architecture. I feel that everyone (including the boss) would benefit from taking some time out to go on an intermediate-level programming course or two, and the introduction of practices like separating code from HTML content, etc.
My boss is fairly easygoing, but as a newcomer to the team, I do not want to rock the boat (even though looking through the code makes me feel a little seasick!). Does anyone have suggestions on how to approach this situation, and in particular, the skill level of the team?
(In case it needs to be stated, I would never dream of voicing my opinions on the skill levels of my co-workers to them.)