はてなキーワード: TensorFlowとは
Geminiさんに聞いてみた。冗長ー!
Geminiです。クラウドではなくローカルでLLMを遊びたいとのこと、素晴らしいですね!ローカル環境でLLMを動かすには、高性能なPCが必要になります。
残念ながら、特定の「LLM専用」と銘打ったブランドのPCを販売しているショップは、まだ一般的ではありません。しかし、LLMを動かすために必要なスペックを持ったPCは、多くのPCメーカーやショップで購入可能です。
LLMをスムーズに動かすためには、以下のスペックが求められます。
もし、ある程度の知識と時間があれば、自作PCに挑戦してみるのもおすすめです。自作PCであれば、自分の好きなパーツを選んで、自分だけのオリジナルPCを組み立てることができます。
ローカルでLLMを動かすためのPC選びは、予算や用途に合わせて慎重に行う必要があります。まずは、自分がどのような用途でLLMを使いたいのかを明確にし、それに合ったスペックのPCを選びましょう。
GPUクラウドサービス: ローカル環境を用意するのが難しい場合は、GPUクラウドサービスを利用するのも一つの手です。
LLMのフレームワーク: TensorFlowやPyTorchなどの深層学習フレームワークを使いこなせる必要があります。
LLMの世界は日々進化しています。ぜひ、自分に合った環境でLLMを楽しんでください。
何か他に聞きたいことがあれば、お気軽にご質問ください。
Keras: The high-level API for TensorFlow
https://www.tensorflow.org/guide/keras
対戦有り難うございました。
はい、Kaggleのようなブラックボックスのリーダーボードで評価する現場は存在します。
機械学習モデルの評価には、一般的に以下の2つの方法があります。
1. **ホールドアウト評価**: 学習データを訓練データとテストデータに分割し、テストデータでモデルを評価する方法。[1]
2. **ブラックボックス評価**: 評価用のデータセットが公開されず、サーバーにモデルを提出して評価される方法。Kaggleのコンペティションがこの方式。[1][2]
つまり、Kaggleのようなブラックボックス評価は、機械学習の様々な現場で採用されている評価方式の1つであり、特に実運用に近い評価が求められる場合に有効な手段となっています。[1][2][3]
Citations:
[1] https://qiita.com/Shun_PI/items/896d05ed9689f4b24347
[2] https://www.kikagaku.co.jp/kikagaku-blog/kaggle-competition/
[3] https://www.kikagaku.co.jp/kikagaku-blog/signate-competition/
[4] https://www.topgate.co.jp/blog/google-service/8707
[5] https://www.jst.go.jp/crds/pdf/2023/RR/CRDS-FY2023-RR-02.pdf
最近は最前線から離れててあんまり追えてないけど、現役のときの2008年くらいから10年くらいの間で、仕事のやり方や設計の考え方が大きく変わったIT技術要素で、いまぱっと思い浮かぶのはこんな感じかな。
分野にもよるし、調査して試作した結果自分の業務には採用しなかった技術とかもある。流行ると思って使えるようになったけど流行らなかった技術を入れるとたぶんもっとある。
あと、新機種が出てOSが新しくなったり、ミドルウェアの新バージョン対応、テスト手法の進化もけっこうカロリー高いけどここには書いてない。
「自分はフロントエンド専門でReactしかやらない」みたいに分野を絞れば大分減るけど、その技術が何年持つかわからないから普通はリスクヘッジのために他の技術も齧らざるを得ないし、バックエンドとかの人と議論するのに結局他分野の知識もそれなりに必要。
NoSQL(memcached, Redis, Cassandra)
クラウドアーキテクチャ、XaaS(AWS, Google Cloud, MicrosoftAzure)
CI/CD(Travis CI, CircleCI, Jenkins)
トランスパイラ(Browserify, webpack, CoffeeScript, TypeScript)
型システム(Rust, TypeScript, Haskell)
オーケストレーション(Ansible, Kubernetes, Terraform)
機械学習(Python, MATLAB, 線形代数等数学知識)
SPA(React, AngularJS, Ember.js, Vue.js)
3Dゲームエンジン(Unreal Engine無償化、Unity5)の他分野への普及
GraphQL
機械学習ライブラリ(Tensorflow, PyTorch, Chainer)
Jupyter Notebook
NFT
GPT4:
AI技術やその他の技術が急速に発展している現代では、確かに最先端の技術にアクセスできないと置いていかれる感覚があります。しかし、経済的な理由で最先端技術を利用できない方々も、それに代わるリソースや方法を活用することが可能です。
AIやその他の分野での学習や研究に役立つ無料または低コストのリソースがたくさんあります。以下にいくつかの例を挙げます。
経済的な制約がある場合でも、これらの無料または低コストのリソースを活用して、AIの分野で学び、成長することができます。最先端技術に追いつくためには、情報へのアクセスだけでなく、自分自身の学習意欲や努力も重要です。
やりたいことがありPythonを勉強しているけど、マジで躓きが多い。
いや文法とかは調べりゃわかるじゃん。そういうのはJupyterで書いて学習はできるのよ。
そうじゃなくて、やりたいことを実現するための環境構築ができない。
独自ライブラリのinstallがうまくいかん、importがうまくいかん。
Visualなんちゃらツールが足りないだとか、TensorFlowが必要とか仮想環境を立てるだとか、、
こんな初歩的なこと!って思うかもしれんけど、もうこれで一週間(夜の時間な)とか浪費してるわけ。
こんなんじゃ、やりたいことの実現に何か月もかかってしまいそうだ。
なんかこういう環境構築って「1本道感」がないんだよな。
本業がSIerなんだけど、正直自分自身が技術力のない人って認識はあるし、今回それがモロで裏目に出ている。
システムの構築をお願いする立場として、よくインフラ周りの人とかリリース担当の人とかから「環境(構築)の手順が・・」とか始まってたのを思い出す。
当時は「ベンダーに聞いて解決しなさいよ」とか思ってたけど、今自分の躓いてる状況を踏まえると、それだけじゃ到底解決しなさそうなことも多いんだよな。
特にいまの自分は、躓いた時の手数が少ないし、どうすりゃいいかわからんことが多すぎる。
質問サイトとかは使ってるけど、みんなどこかのコミュニティに所属したり、ちゃんとオンラインスクールとかで一本道的な環境構築法を学んだりしてるのだろうか。
なんか今頃になってPythonの学習コンテンツが充実してきてるけど
Pythonってもう旬を過ぎたと思うんだよな
tensorflowとかsklearnとか使うためにPythonは凄く有用だったしこぞって使ってた
まぁそれでもPandasはクソだったけど他に選択肢もなかった
あと、AIみたいにサービス化とかUIを気にしなくて良いようなワンショットのプログラミングには向いてた
型付けとかしなくていいし、少しぐらいメモリリークしてても気にしないし、UIはtensorboardとかグラフをpngで吐き出せば良かった
何よりターミナルから打ち込んだら実行してくれたりMarkdownのファイルの中に書いたら実行してくれたりそれはまぁ便利だった
ところがAIがコモディティ化して頭打ちも見え始めてきた段階でそろそろビジネス化しないといけないけど
そうなるとPythonみたいなやんちゃな言語をプロダクトレベルまで実装出来る人が少ないことに気づき始めた
UI作るの面倒だし、型チェックとかもやってくれないから想定してないバグが出たり
Pythonを凄いやってた人も「プロダクトレベルとなるとちょっと」っていう人が増えてきた
かといってJavaには戻りたくないってなってTypeScriptが流行り始めた
そもそも最終のUIはWebだし、jQueryから始まったReact/Vue/Angularあたりはどれを使っても簡単にUIを作れる
おまけに枯れたNode.jsでサーバレスに実行できる環境まであるからTypeScriptが流行りまくってるんだと思う
Web系の弱いところはスマホアプリで、WPAあるけどイマイチ流行ってないしAppleが乗り気じゃ無いのがなんとも
なのでflutterあたりが人気出てくるかなぁ、とは思うけどWeb系ほど選択肢が無いから合わない時にとことん合わないと思う
ここから数年はPython人気が落ちてきて、TypeScriptが伸びて、Dartがじわじわ伸びてくるんじゃないかなぁ
初学者はPython、とか言うけど関係なくTypeScriptやった方がいいと思う
(年収270万で)プログラマーを引退して、医学部にきた俺が真面目に考えてやろう。
真面目に読んでいて、ちょっと気になる箇所がある。たとえば PostgreSQL を postgre とか書くヤツは現場では嫌われるぞ。少なくとも postgres と書いてくれ。お里が知れるぞ。
消えていくエンジニアの特徴だけど、叱責されたり馬鹿にされるのが嫌で VCS にコミットしないヤツ、または貪欲にコードレビューをされるのが嫌がるやつは、成長しない。
この業界は数年前には『デジタル土方』と揶揄される業界でした。ちなみに、アメリカでも「テック系はハードだから避ける」という雰囲気でした。つまり何をいいたいのかというと、ソフトウェアの開発者っていうのは「泥臭い領域」なんだよ。エリートとは程遠い場所にあるというね。
いやぁ、是非とも楽天で働くべきだよ。どうせ野村総合研究所とか NTT DATA なんて無理だと思うから。
うん、ココはまずい。基本的にフロントエンドなんて給料が安いのよ。だって、誰にやらせてもデータベースにクソなDCLを飛ばせないから。逆に、データベースを触れることができるプログラマーはリスクと責任が大きいから、給料が高いのだよ。B4 になってもそれが理解できていないようだと、この先くらいよ。
君はソフトウェア・エンジニアになりたいのだろ?世の中は分業で成り立っているのだから、全部やろうとするやつはアホだよ。
インターン生はお客さんなの。君のスキルが通用したのはすごいと思うけど、同じ感覚で仕事はできないから注意しときなよ。
なに言ってるの?そんなことは言い訳にならんよ。プログラマーになりたいのだろ?勉強をしろよ。
逆にいうと、あなたがインターンとして週3で20万円貰えていたのは、参入障壁が少ないからでしょ?強強エンジニアが生き残っているのは、それだけすごいということだよ。
いやぁ、違うと思うよ。その問題が「難しい」なら切り分けて、上に「ココが自分の能力では解決できないです」と持っていくだけなんだからさ。CS じゃないのだったら、仕事をするまで「扱わないまま」なんだよ?しかも、土日に勉強する気もないとなったらいつするのさ?
諦めなよ。ソフトウェアというものが「変化できることに価値がある」ものだから。変化する業界はストレスフルだけど、立身出世する可能性が高いでしょ?安寧なばしょではないの。
いやー、CSでない博士課程に行って、雇ってくれる企業があるかね?無いと思うけどな。
この時点で、君はコピペしかやってきてないことが理解できる。おそらく QUIC か MQTT あたりだろ?逆にいえば、それが実装できたら他社と差のつけられるプロダクトだったはずだ。つまり会社の利益の源泉であった部分をみすみす実装できないようでは、そこらへんの専門卒以下だぞ。
ムカつくというか、虫酸が走る書き方だ。箇条書きにすると、
プログラミングに年齢はないから。自分は9歳ではじめたけどね。
あー、俺も天才が高校のときにいて、マーチの情報工学と旧帝の院の学費を会社持ちという驚異的なやつがいたよ。今もブログ見てると、Android と iPhone のアプリを書いているみたいで、元気そう。
それを上手にコントロールできるプログラマは世界中にもほとんどいねぇ。むしろ、月20万でやるもんならギルドから苦情が来るぞ。オレもアビームの人に給料を答えたら、「こんなヤクザな会社はやめろ」と耳うちされたよ。
人より良い経験をしたいという願望はあるのは素晴らしいと思うよ。しかしながら、君が到達したノウハウは他人にもできることだからね。ワン・オブ・ゼムになりたくないなら、努力し続けることだな。勉強をするのをやめたら、数年で中卒に負ける世界だからな。覚悟しとけよ。
P.S. 医学部に来たのは家庭の都合だよ。それに、自己顕示しないと「場末のコーダー」で読んでもくれないだろ?年収については、自分も低いと思うよ。なぜ低かったかというと、都内私立大学多浪中退の自分にはベンチャーの皮を被った助成金搾取がメインの反社会的勢力のフロント(ベンチャー)企業ぐらいしか相手にしてくれなかったからだよ。そこの会社は外国帰りの MDMA をキメて、未成年の子女に手を出しては警察沙汰スレスレのことをしているキチガイが社長をやっていて、人工知能を作ろうと学生インターンを酷使している会社だったのだけど、「サイバーエージェントに紹介する」という嘘にひっかかって、特定派遣事業の免許がないのに客先常駐させられ、土曜は帰社日、日曜は社長の Python の勉強会に参加させられる、というブラック会社にいてピンはね率(60%)となると、まともに考えることもできず働くアリになってしまってたからだよ。
P.S. ② 年収については、初日から派遣先の会社に引き抜きのオファーをもらって、2ヶ月後に新しい会社に移動したけど、300万だったので CodeIQ というサイトで転職をする準備をしていたよ。たしか、DMM とかサイバーエージェントの面接にいこうとしてたような記憶。その後で家庭の都合で、医学部に来たけど。
P.S. ③ 医学部医学科の6年生だよー。みんなが嫌いな私立医学部だけどね。ちなみに、俺もこの大学が嫌いだ。
P.S. ④「GraphQLをわざわざ書くのは理解できるけどな。」そうだとすると、REST や SOAP も書かないとまずくない?書くのだったら「Rails と Next のデータ受け渡しにGraphQLを使った経験が」という感じだと良いと思うけど。
P.S. ⑤「野村総研とデータを挙げるあたりSI寄りの仕事してたのかな。 」ちゃうねん。オレっちは多浪したからさ、そこのエントリーシートをかけなかったのよね。まぁまぁ大学が名門でさぁ、OB が誘ってくれるけど、年齢で弾かれて辛かったねん。
P.S. ⑥「ダウト。学費をどうやって稼いだんや 」えぇ、親の金です。だから家庭の都合でと書いてるじゃろ。
P.S. ⑦「本当に医学生ならここ数年の技術についてこの指摘ができる程詳しいわけないし少なくとも10年位は業界にいないとこういう感覚は身に付かない。 」たしかにおかしいよな。Kubernetes や Terraform を弄って、CI は GitHub Actions、CD には AWS CodeDeploy を使って、ブログは Jekyll で静的サイトジェネレータを使いつつ、自前のサービスを立ち上げるために Rails, Next, React, PostgreSQL, Redis, Kafka, Elasticsearch, S3 の勉強をしつつ、スマホ環境のために Kotlin と Swift を触れているなんて変だよな。そういえば、Docker が来るまでは Vagrant で環境をつくっていたのも忘れてたよ。あと Rust を今年に学ぶ言語にするなんて、受験生にあるまじき行為だよな。うん。
P.S. ⑧ 年収については、基本給が 22万で、残業が200時間超えたらプラスだった気がする。あと、反社ベンチャーは「ポートフォリオの作成にまる一ヶ月間で拘束された、しかも無給で」という時点でヤバいのだけど、その会社にコミットしたのは「サイバーエージェントに紹介する」ということだけであって、同時期に DMM も面接に行けそうだったのよね。馬鹿なことをした。
P.S. ⑨「特にフロントエンドを見下す感じとか」オレ自身はフロントエンド出なんだよ。何を隠そう、Adobe Flash のゲームをつくっていたから。それでもって言うよ、バックエンドが一番大切だと。
P.S. ⑪「5~10年前に人売りに捕まった話とするなら、年収270万も現実味を帯びる。」特定派遣は消えてくれてよかったよ。俺のところは特定派遣すら未登録だったけど。
P.S. ⑫「いい医者になるのだよ 」うん、頑張る。「オッサン」「社会不適合者」「あるき方がキモい」「プログラミングwww」「同じ班になりたくない」「親も頭が悪い」「生きてて恥ずかしくないの?」とか言われてるけど、頑張る!
P.S. ⑬ 「フロントエンド別に給与低くないよ。」えっ、そうなの?WebDesigning を読む限りだと、400万もいかないイメージだけど。
P.S「医学部6年でまだプログラムに興味あるの不思議。」好きなんだよ、言わせるな///
P.S. 「フルタイムじゃないのでしょ?」いいえ、東京都内でフルタイム(ひどいときで、朝7から夜24)でしたよ。入った会社が「法律よりも、派遣先の評価」という会社だったからね。
P.S. サイバーエージェントさん、ときどき御社の社名を使って「弊社に恩を売ると、サイバーエージェントに紹介する」というベンチャーが跋扈しているので、どうにかしてください。わたくし、1ヶ月間もその嘘で jQuery と Django を回収させられた挙げ句、月給 2000円だったのですけど。本当に千円札2枚だったのですけど。ついでに、Android(Java) と iPhone(Objective-C)と jQuery を使ったフロントエンドシステムに、バックエンドに Rails + Postgresql のシステムで、AWS を介したサービスを作らされたのも「サイバーエージェントに紹介する」と言われたからなんですけど。いったい、何なんですか?お前ん所は、コンプライアンスどうなってんじゃ。
P.S. 「好きそうだし医学部卒業してシレッとgoogle行ったれ 」無理っすよ。オレのスキルじゃ。
P.S. 「病院は」親がクリニックを持っていたけど、潰したよ。クリニックは人に患者がついていて、アルバイトを充てがっても患者さんが不幸になっていくのをみちゃったからね。自分は責任を持って患者さんを見たいから、バイトなんて使わないよ。
P.S. 自分はコードを書きたいタイプだったから、SIer みたいな UML とか書いて下請けにコードさせるみたいなのは絶対に嫌だったのよね。だから SIer にはならなかったよ。やっぱり、現実にある計算機が解決できる問題を、より直接的に触れて解決したいと思っているから。仕事がハードでも全く問題なし。
P.S. FPGA すごいよね。ザイリンクスとアルテラが Intel と AMD に買収されて、すごいと思ったよ。2010年頃だっけ?、CPU の限界を FPGA で突破しようという話があったけど。手を出そうと思ったけど、高性能なチップが 100万ぐらいして挫折した記憶があるよ。
P.S. 「東海大の医学部・学士」は自分は大学を卒業してないから無理でした。あと、それ以上の詮索はやめてくれ...
P.S. 「MySQLそんなに嫌いなのか。」そんなこと書いたつもりはないが、あれ?確かに MySQL は PostgreSQL より嫌いたけど、それは Oracle が親元だったり、Unicode の扱いがファッキンだったり、ストレージエンジンが切り替わるときにカオスな目にあったけどさ、MySQL は好きだよ。お世話になったし。
P.S. 給料については契約後に言われたのよ。というか、もともとは「サイバーエージェントに紹介」するという理由で、ポートフォリオの作成や Django の改修を手伝ったつもりで、入社とかする気は全く無かったのよ。それが、いきなり他所の会社に面接を受けさせられて「君は明日からXXで働くから、履歴書を書いてね」と言われて、抗議したら「俺に恥ずかしい思いをさせるのか!業界に入れなくするぞ!」と大声でシャウトされて、気がついたらあっちが用意した履歴書に拇印してしまったのよね。有料職業紹介と派遣登録をしてない会社だったから、そんなかとはできないはずなんだけどね。ホームページには「年収550万」と書いてあったけど、実際はまったく違ったのだけどね。
P.S.「うーん、いらないかな。IT土方としての仕事しかないと思う。」だよな。おとなしく医者になるよ。ありがとう。
P.S. Elasticsearch は全文検索機能がほしいからやってるよ。Redis はインメモリなセッションストアとして使いたいのよ。Kafka はさ、twitter のファボをじっそうしたいけど、RDB の書き込み速度が上がらないから利用したいの。TensorFlow は全く理解できてないよ。それは、指摘されたとおり。
逆に聞くけど、以下の知識があったらどれぐらいもらえるわけ?東京23区で。
設定が雑なので雑に書くぞ。URL貼りすぎると投稿できないから所々自分で見つけて。
Udemy終わったら本
DeepLearning
理論(というか↑で紹介してない本)
駄文なので最初にまとめておくと、知識ゼロ異業種から転職して何とかエンジニアとしての人生を始めました、という話。経歴がショボすぎて誰かの道標にすらならないだろうけど書き残しておく。実名で書く勇気はないので増田にて失礼。
PCを初めて触ったのは4歳の頃。
黒くてごついボディが幼心にぐっときたのを覚えている。この記憶があったためか、初めて自分で購入したPCはThinkPadだった。
我が家にインターネット開通。深夜に親が寝てからこっそり2chとニコニコ動画を見ていた。PS2でドラクエ8をやってグラフィックに感動する。まだプログラミングという言葉は知らない。母親のヒステリーと父親の拳骨に耐える日々だった。
地元の高校に進学。友人とホムペ(死語)を作成。html/CSSで文字の色か変えられたりアニメーションをつけられることに気付く。この頃もまだプログラミングに目覚めない。プログラム?理系の人がやるお仕事なんでしょ?という雑な認識であった。
もちろん文系学部に進学。人の視線が怖かったので前を向いて歩けず会話もままならなかったが、制服が可愛いという理由だけでお洒落カフェでバイトを始める。私は阿呆だが、この阿呆さないしは無鉄砲さでエンジニアになったと言っても過言ではない。
新卒入社した会社を3ヶ月で退職。支えてくれる彼くんとかもいなかったので実家でお通夜してた。鬱も発症して薬漬けになった。対面で人と話すことが難しいため、テキストベースで仕事ができる職を探し始める。ここでやっとプログラミングに出会う。
何にせよ無職だから時間は腐るほどある。ヨドバシでカモ丸出しの顔をしてThinkPadを買い、Javaで簡単なアルゴリズムを実装することから始めた。フィボナッチ数列を生成するとかクイックソートを実装するとか。あと5日ぐらいかけてServlet/JSPとMySQLでTODOリストを作った。
2ヶ月ほどJavaをやった頃、無謀にも機械学習に手を出し始める。本を一冊買って隅々まで読み込んだ。この頃から鬱が寛解し始める。プログラミングに夢中になって、1日12時間以上はPCの前に座ってひたすらコードを書いていた。不思議と疲れはなかった。ゲーム用に買ったデスクトップPCにそこそこ良いGPUがついていることが判明したので、Tensorflowでモデルもどきを作り、AI(笑)を組み込んだポートフォリオ用webアプリを3ヶ月かけて作成した。サンプルコードを超える範囲はドキュメントを読む、適宜技術書で知識を補うなどしてなんとかオリジナルと言えるコードをひねり出すこともこの頃覚えたと思う。なお肝心のモデルはチューニングは一切していないわ当然精度も悪いわでその筋の人が見たら鼻で笑うレベルであるが、一人でアプリケーションを作り切ることができたのは大いに自信に繋がった。
ポートフォリオを持って5社ほど受け、うち1社の小さな受託系企業に内定を貰い、無事職にありつくことができた。文系未経験第二新卒を雇う勇気を出してくれた会社には感謝しかない。
会社規模が小さいからか、個人の裁量が大きく、設計から実装、テストまで何でも任せてもらえた。良き上司に恵まれ、主にUnityやスマホアプリの開発を担当し、技術の奥深さ面白さに触れさせてもらった。自身が実装を担当したアプリが世に出ていくことの喜びみたいなものも味わえた。この会社は昨年度退職し、現在は500人規模の自社開発系企業でiOSアプリエンジニアをやっている。スキルは未熟だし対人恐怖的なものも治ってはいないけど、私はプログラミングが好きで、エンジニアとして骨を埋めたいとか身の程知らずにも思っている。
ご覧の通り、私は幼い頃からプログラミングに触れたりモノづくりをしていたわけではない。むしろ目覚めは遅い方である。そういう人でも興味があるなら、ITエンジニア目指してもいいんじゃないか、そうであってくれ、という気持ちで書いた。読んでくれてありがとう。プログラミングはいいぞ。
MSは元々ソフト屋だからWindows ServerとかSQL ServerとかActive Directoryとかをマネージドで出したり、GoogleもSpanner作ったり、Firebase出したり(買収だけど)、Tensorflow統合出したりKubernetes統合出したり(どっちもパクられてるけど元はGoogle産)してるけど、
AWSはどちらかというと本当にハード貸し(AWSが作った最大のソフトウェアは「サービスとしてのハード貸し」を発明したEC2とS3とは言えるかもしれない)というイメージ
VPSとの違いはやっぱりEC2とS3で、需要に応じて自動でスケーリング可能な「サービスとしてのハード貸し」を実現したからだと思う
それは確かにソフトウェアで実現されているけれど、肝になるのは「顧客のピーク需要に常に応えられるほどの余裕を持ったインフラ」というハードウェア投資かなあと思う
■30半ばで年収900万円達成したんだけど、向上心が失われて行って辛い
新卒時は大手SIer(プライムコントラクター)に就職、30手前でユーザ企業に転職して今は上流・下流工程を知ってるITシステムの発注者側の立場にいる。
新卒でIT企業に就職した時はまだ自分がこれからどうなっていくのか明解なキャリアパスは描けていなかったが、
30歳に近づくにつれ、ユーザ側(発注側)に転職してITエンジニアを指揮する立場にならなきゃダメだと思い転職活動を頑張り、結果望み通りユーザ側の企業に転職して現在に至る。
新卒当初はSIerの中でチームメンバー(システム設計・実装・テストをする人) → チームリーダー → PM → 統括PMのようなキャリアパスを描くのが王道だと思っていた。
だが、元請けとは言えどんなに非合理なシステムでも客に言われた通りに作らなきゃいけない下請け企業でPMになったところで大して意味がないことに気づく。
自分に裁量などほとんどなく、理不尽な客に怒られたりバカにされたりする頻度が増えるのに比べて給料は大して上がらない。
担当していたプロジェクトは超大企業のサービス開発。なのだが、ユーザ側の担当者のレベルがびっくりするほど低い。発注担当者は中学生の作文みたいなクソRFP書いてよこしてくる。納期も費用も工数もめちゃくちゃ。しかもやりたいことが全く分からない。多分発注担当の上の奴がテキトーに言ったことをそのまんま真に受けて左から右に流してるだけなんだろうが、有名な大企業にもこんなおバカな社員が堂々と給料もらって平気で定年まで安泰なんだなと思ったら複雑な気持ちになっていた。
だけど、幸か不幸か、そのダメな担当のおかげで20代のうちにユーザ側へ転職しないと仕事のレベルも上がらないしスキルも上がらないことに気づけた。30半ばになって思い返すと、本当に感謝しかない。
まだ30半ばで成功とか失敗とか書くのは時期尚早だとは思うが、給料も大幅に増えてフルリモート・フルフレックス・コアタイム無しの環境を手にしている現状は控えめにいっても成功だと思わざるをえない。
年収も30半ばにして900万円を超えた。
ユーザ企業に転職して思うのだが、ユーザ企業ではITのスペシャリストというのは新卒ではほとんどいない。ゼロとは言わないがSIerのレベルから見ても平均から下のレベルしかない。
なので業務を改善する社内システムの開発や、売り上げに直結するWebサービスのバックエンド・フロントエンドの開発プロジェクトが検討され始めると必ず声がかかり、システムのアーキテクチャを選定する段階から意思決定で主導権を握れる。
こちらとしてもそういう役割を期待されて中途採用されたというのもあるし、何よりこういう会社は新卒採用時にITのスペシャリストを採用することもないので、社内の新卒の誰かと争って主導権をようやく握る、などのようなこともなく、自然と企画、設計、実装、運用まで全て意思決定に関われる。
まさかSIerから転職した身で、自分でTypescript, React, Firebase, Java, C#, C++, SQL, Python, TensorFlowを駆使してゴリゴリ開発して企画を実現し、それがプレスリリースされて正式に会社のサービスとして世に出るようなことになるとは20代の頃は想像していなかった。
ここまでは20代の頃に目指していた理想の30代のキャリアパスそのものだと自負していて大変満足している。
だが、30半ばにして20代の頃ギラギラとした向上心が次第に失われつつあるのを日々実感している。
30前半までは自分で目標設定してそれを達成するのが楽しかったが、30半ば以降は金と評価が欲しくなってくる
30代前半までは日々成長し、技術の選択肢も勉強する度に着実に増え、サービスの企画が持ち込まれるとそれを実現するためには~すればいい、などとパッと浮かんで日夜シミュレーションしてPoCして…というサイクルが楽しくしょうがなかった。
今でも楽しくはあるのだが、これまでとは違って「ただ楽しい」だけでは到底満足できなくなっている自分に最近気づいた。
これまでは金になろうがなるまいが、依頼された仕事は自然と全力で取り組むことができた。報酬はやりがい、のようなところは正直あった。
だが、30半ばを超えてくると物の価値がだんだんとわかってくる。
仕事が忙しくなった時に皆さんはタスクに順位付けをするだろう。
これまではその優先度は難易度で昇順ソートかけて上から順に消化していく方式をとっていた。
すぐできるものから片づけることで、仕事の見かけのスループットが上がる。客観的には仕事が早く進んでいるように見える。
だが、今では、そのタスク・プロジェクトが将来金になるかならないかでタスクの優先順位を検討するようになりつつある。
結果が魅力的でなければそもそも仕事のやる気すら湧き上がってこない。
年収900万円
これは30代半ば、理想のキャリアを追い求めて突っ走ってきた人間の向上心が奪われてしまうような大きな金額なんだろうか。
このへんで満足してあと20数年まったり定年まで過ごすべきなんだろうか。
20代の頃あれだけ将来のキャリアについて真面目に考えていたのに、30代になって40代の理想のキャリアパスが描けない。
うちの会社は年功序列なので、年収も40代になれば自動で1000万円を超える。
このへんで走るのをやめてジョギングに切り替えても、多分未来はそう暗くない。
なのに、アクセルが減速しかかっている自分を冷静に見つめると、何か、本当はもっとできるのに手を抜いている、みたいな罪悪感が湧き上がって止まらない。
はてなを読んでいると、自分と同じ30半ばくらいの年代の人が多くいるように感じる。
30半ばでようやく安定を手にしつつある自分と似たような境遇の人がいれば、
40代に向かってどのような準備をしているのか、さらに上を目指しているのかそれとも今のポジションでの安定を取るのか、それとも会社を辞めて起業を考えているか、など、
恐縮ではあるが共有してほしい。
30半ばでクズになりかかっている自分に、勝手ながら発破と刺激を与えてやってほしい。
よろしくお願いしたい。
今までの自分のスキル関係なく、今日からスクラッチでソフトウェア開発するとしたら、どんな環境がいいんだろう?という問いかけです。
ちなみに自分は以前組み込み系のエンジニアでWeb系は詳しくない&ここ1年ソフトウェアの仕事から離れてましたが、最近Webアプリ作りたいなと考えてます。
・組み込みソフト・・・基本C言語、最適化するとこはアセンブラ、マイコンのコンパイラが対応してたらC++
・Windowsアプリ・・・C#(.net framework)、nodejs(electron)
・スマートフォンアプリ・・・3DだとC#(Unity)、Dart(flutter)、javascript(React)、作り込むならネイティブ(iOSはswift、androidはKotlin)
・Webアプリ・・・nodejs、ruby(on rails)、Dart(flutter+firebase)、python(Django)
・社内アプリ・・・社内がマイクロソフト環境(outlookとかteams)ならPowerApps
・AI開発・・・python(TensorFlow、scikit-learn)
・用意されているAIをColaboratry(Googleの無料貸し出しPC)上で5秒で動かす。
データサイエンスVtuberに相談する。
・初心者向け動画講義まとめ
1. 【世界で18万人が受講】実践Pythonデータサイエンス | Udemy
2. Machine Learning by Stanford University | Coursera
3. Eラーニング教材・講義動画配信 | 数理・データサイエンス教育強化拠点コンソーシアム
- データハンドリングなどの入門者講座はUdemy の方が良いが、時系列解析・データ活用講座に関してはこれより良い教材は無い。
- 多分、動画の[1,2,3]を理解していてコードが書けて、学歴があるならTier4 のインターン・バイトは受かる。
4. DeepMind x UCL | Deep Learning Lecture Series 2020 | Youtube
- Deep Learning 講座、タイトル通り