Python案件に初めて参画するとき、いろいろと考えると思います。
この案件はいろいろな意味で大丈夫な案件なのか、この案件についていけるか、この案件で自分はキャリアアップ出来るのか…
そこには、IT業界共通の事情もありますが、Pythonならではの固有の事情もあります。本記事では案件を選ぶ際失敗しないように、Python案件の選び方を解説します。
Python案件の特徴
案件は首都圏に集中しているがリモートの影響で地方でもチャンスは増加
初めに現実から言えば、筆者の住む都市(地方都市)では、Python案件はほぼありません。未だに20年前の言語の案件がほとんどです。
これはPython固有の事情と言えるでしょう。
Pythonはここ数年で徐々に浸透してきた言語であるため、新規開発、リプレースに限られています。
そして新規開発でも、まだまだPython技術者が少ない中、AIを除けば「さあPythonで作ろう!」と踏み出せる企業はなかなかいません。
その為Python案件は、Python技術者が確保できる首都圏にどうしても偏りがちになります。
しかしコロナ禍が追い風となって、フルリモートを取り入れる企業も増えてきました。
そういった影響もあり、年前と比較すると地方在住者でもPython案件に参画するチャンスは増えています。
筆者も、ここ2年はほぼPythonしかやっていません。
Pythonを選択する企業は先進的な企業が多い
Pythonを選択する企業は、いわゆる先進的な企業が多い印象を受けます。
働き方もリモートであることを初めとして、打ち合わせがないとか、自由である場合が多いと思われます。少なくとも筆者が関わった企業はみなそうでした。
自由な働き方をしたい方には、Python案件は向いていると思います。
また、先進的な企業は、技術的にも最新の技術を取り入れる傾向にあります。
Django REST framework、WebSockets、Stripe、自動テスト、自動デプロイ、Github、AWS、React、Vue…
など、比較的新しい技術を積極的に採用する企業が多いのです。
そのような背景もあり、キャリアアップのチャンスが無限にある環境に参入できるということもPython案件の特徴と言えます。
案件のバックグラウンドを探る
それでは、実際のPython案件の面接時に、案件のバックグラウンドを探るにはどうしたらいいか解説します。
会社の見極め方
日本のIT業界は、ITゼネコンと独立系ベンチャーにすぱっと二分されています。
問題なのは、
ではないということです。
ITゼネコンの一部で下請けをしている企業にも風通しの良い企業はいっぱいありますし、ベンチャーであっても、社長がワンマンだと社員がクライアントを見ずに社長の顔色を窺うといった企業風土になってしまっているベンチャーもあります。
風通しが良いか悪いかの見極めは、面接時の担当者の話す内容や話し方、面接が終わってから契約に至るまでのスパンの長さで分かります。
風通しの良い企業は、往々にして現場に裁量権限を大きく持たせています。
よって、担当者も話す内容が幅広く、即断即決できます。
反対に風通しの悪い企業は、すぐに上がどうこうと言い、社内稟議に時間を取られるため、契約に至るまでも長いです。
これは、実際に業務に入ってからの業務の遂行に大きく関わります。
風通しの良い企業は人間関係のみならず業務の進め方でも自由度が高いですし、悪い企業はその反対です。
案件は炎上していないか?
筆者も、「火消し」でヘルプに入ったことがあります。
筆者の場合は最初から「火消し」と言われていましたので、朝8時出勤夜11時帰宅、土曜日も休日出勤でもそういうものと納得できましたが、たまたま契約に至った案件が炎上していたらそれは嫌ですよね。
これは面接のときの担当者の目を見てください。
目にダイレクトに反映されます。嫌なことをやっていれば、人間誰でも目は死にます。楽しくやりがいのある仕事をしていれば、目は生き生きします。
筆者の経験ですと、炎上する場合は、PMに問題があったり、元請けに問題がある場合が多いようです。現場がどれだけ奮闘しても、奮闘が報われない構造が出来上がっています。
往々にして古い技術にしがみついているとか、システム全体の設計が悪いとかいう場合が多いです。なぜなら、現場の意見が反映されないからです。
先ほど書いた理由で、Python案件に炎上しているものは少ない印象を受けます。
また筆者の経験では、Python案件で炎上させたことはありません。
Pythonは炎上しにくい開発言語と言えるのかもしれません。
それでも、注意しておくに越したことはありません。
自身とのバランスを探る
仕事をするのは、自身の成長へとつなぐためでもあります。
自身と仕事のバランスについて解説します。
Python案件の難易度の見極め方
正直、Python案件は難易度が高いものが多いです。AIは言うに及ばず、Webでも、最先端の技術を使います。
Python1年生ではなかなかこなせないものばかりです。
面接のとき、知らない技術用語が1つならこなせるかもしれません。
しかし2つ3つとなって、それがその案件のコア技術だったりすると、これは厄介です。
決して背伸びをしてはいけません。あなたが分からなければ周りに迷惑がかかります。
面接のとき、技術面の概要は絶対に聞いてください。それを理解できるか否かで見極めましょう。
キャリアパスと案件のバランス
一口にキャリアパスと言っても、フルスタックエンジニアを目指すのか、スペシャリストを目指すのかで違ってきます。
その案件は、汎用性が高いでしょうか、専門性が高いでしょうか。
意外と案件によって明確に色があります。
一つ大事なことは、あまりこだわっていると決まるものも決まらないが、あまりに無節操だと逆にキャリアが定まらない、ということです。
なので、自身の能力と適性をよく考えて、譲れない線というものを決めてください。
自身のキャリアパスの中の譲れない線です。
その中で案件に応募しましょう。
キャリアパスは大事です。10年後どのようなPython技術者になっているかは一つ一つのキャリアの積み重ねで決まります。決して、これは捨て仕事だと思って案件を選ぶことがないようにしてください。
1年を失うと、取り戻すのに1年かかります。
まとめ
この記事では、案件の見極め方、並びに自身との関係について解説してきました。
言われてみればなるほどという内容が多かったのではないでしょうか。
一つ言えるのは、案件を進行しているのも同じ人間だということです。
AIと契約して働くのではありません。
なので、普段の人間関係をベースに少し変形を加えれば、それは案件に関わることの理解になります。
何も難しいことはありません。
あなたもPython技術者への第一歩を踏み出してください。