본문 바로가기
애자일(Agile)개발방법론

CTO Should be

by swconsulting 2018. 7. 17.

A CTO should be:

  • Setting technical direction: E.g., technical product strategy, product line architecture, key features & specs, … (And working closely with other top management to flesh out overall company strategy & tactics.)
  • Making major technical decisions (with input): Selecting core technologies & components, picking platforms.
  • Setting standards & processes - like coding standards & processes, including testing, packaging, etc. If he “always submits bad code” - that’s pretty much evidence that isn’t doing this part of his job very well, and may not be competent to do so.
  • Perhaps, writing very key sections of code - e.g., proprietary algorithms/heuristics that the company is based on. In this case, one presumes the CTO is the source of said critical algorithms. (It doesn’t follow that he’s good at turning them into clean code - which, perhaps, should be left to others.)
  • (LATER ADDITION) Participating in design reviews at critical stages of projects - particularly the early, architectural stages. (Again, if he’s turning in “bad code” that suggests a lack of critical capabilities.)

If he has time to code, then he’s sure as hell not doing the job that a CTO is supposed to do.

As an aside, what is it that you mean by “bad code?” It doesn’t work (bugs, doesn’t pass tests), or it’s isn’t well formatted, commented, documented, etc. (A prototype of a key module - based on his unique expertise, and to be cleaned up by others, is not necessarily a bad thing. As long as he knows that it’s quick & dirty. See above.)

LATER THOUGHT: Should not all this “bad code” be detected at design & code review, and/or when it passes through SQA? You do have those processes, don’t you? If not, perhaps you suggest to your CTO, or VP of Engineering, that “there’s too much crap slipping into the code base,” we really need to institute some clearer coding standards, do more reviews, and strengthen our testing & acceptance processes. Maybe that’s a job for the CTO.” That will both stop him from doing so much coding, and deal with any bad code that he submits


source : https://www.quora.com/Our-CTO-is-a-very-bad-software-developer-but-he-loves-to-code-and-always-submits-bad-code-What-should-I-do