北米のソフトウェア技術者は三段階でラベル付けされることが多い。Senior Developer (上級開発者), [Intermediate] Developer ([中級]開発者), Junior Developer (初級開発者) という具合だ。実にくだらないと思う。
この件について言及したブログがあった。
一部分だけ翻訳してみる。
Many junior developers (including me of course) know folks with “Senior” as a prefix or “Architect” as a suffix of their title whom we feel are less knowledgeable (in terms of programming-related skills) than us. One interesting characteristic of many of these folks though is that they have been around for a long time, worked for many companies (not necessarily), made many mistakes, learned from their mistakes, et cetera. However, unlike us, they might not know every language, environment, and/or technology out there. Instead what they do is they make themselves experts in a few areas (usually one or two, as far as I have seen), and instead of learning every language, environment, and/or technology out there, they pick maybe one or two languages, environments, and/or technologies, and make themselves true experts in those.
抄訳: 僕を含む多くの junior developer は “Senior” や “Architect” なんて肩書きのついた知識の浅い開発者を知っている。興味深いのは彼らが長年のキャリアを持ち、多くの企業を経験し (そうじゃない人もいるけど)、多くのミスをおかしてきているということだ。それなのに、彼らはプログラミング言語や開発環境をよく理解していない。そういうことに努力を払う代わりに、彼らは限られた領域でのエキスパートであろうとする。(僕が知る限り) 彼らは一つ二つのプログラミング言語や開発環境について学び、それらの専門家になるのだ。
「この記事は “Junior Developer” なんて呼称がまかり通るのはおかしい」という主張を傘に着ているけれど、実に真摯に技術者の成長について言及している記事なので、北米の開発者文化に興味がなくとも一読の価値があると思う。