はてなキーワード: エンジニアリングとは
AIが高品質の絵描けます!楽曲作れます!って最初は「スゲー」って思ってたけど、使ってみると検索ワード入れて虹エロ絵ググって漁ってる感覚と同じなんだよ。いい加減飽きた。
それよかさっさとクラウドアーキテクチャ管理とかアプリケーションのテスト管理とかできるようにして楽させてよ。Copilotにコード貼り付けてプロンプト生成すんのめんどくせーんだよ。
つまんなくなったなと決定的に感じたのは、今年の頭に行ったデブサミ。
似たり寄ったりな生成AIの活用話ばっかり。過去一つまんなかった。いつもは面白くて夢中で聞いてたんだけど、今年は途中で帰った。本当につまらなかった。
なんていうか、生成AIのプロンプトエンジニアリングとかの話って、人材マネジメント的な話と根本はおんなじ感じがするんだよな。いかにて優秀な新人AI君を働かせるか?的な。
でも、ビジネス上のそういう対人コミュニケーションすら避けたくて避けたくてITに辿り着いたんだよなー。賃金と待遇すら諦めてそっちに来たのにこの始末って酷くないかね。
なんていうか、求められる人材像が経営者一択になってきてる気がするんだよな。「プログラムを書きたい」じゃなくて「プログラムで○○がしたい」っていう、明確に目標ある奴。
「アーキテクチャがー」とか「保守性がー」とかエンジニアが心配しても、マークザッカーバーグの「動くからリリースしようぜ」の画像貼ってデスマ作り出すタイプの奴。でもそんな胡散臭い奴がビジネスモデルを引っ提げてさっさとAI活用で何とかしちゃう。
googleとかAmazon、Microsoft、Alibaba製のAIさえそろえばあとはマッシュアップして需要に対してサービス作って終わり。
全社会人総社長。社会の需要について目を向けられる奴、そういうヒアリング等の営業活動が出来る奴。それ以外いらん。
例えアホでも、マネーの虎みたいな番組でアホみたいなビジネスプラン披露できるような奴以外いらん。
ビジネス出来ない奴はいらん。もうそういう時代なんじゃねーかな。
「粗悪乱造アカンよね。」っていうエンジニアリング思考にすごく共感してたし、そのためのDevSecOps、アーキテクチャ採用、ミドルウェア選定だったりにすごく感銘を受けた。
k8sやらAWS初めて触ったときは感動した。TypeScriptでクソアプリ作るのが好きだった。IoTデバイスやラズパイで自室が少しずつハイテクになるのが好きだった。Google colabでサンプルソースのAIの作るのが好きだった。でもそういうのダサい時代なんだよな。
結局ビジネスサイドには目を向けられ無さそうなんでもうそろそろ引退かな。趣味でプログラム書きながら適当に派遣でもやって生きたいけど、33歳は他業種厳しいかなー。ていうかIT以外のどの仕事もアホらしくて就きたくねー。
なんだなんだ、先月末書いた記事に今更ワラワラと。盆も終わったんだしさ、エンジニア()にクソみてーな誇り持つんなら帰りのNAS位てめーで設定してサッサとあの世に帰ってくれよな。
どうやって金もらってんだよ。
テメーらが「びじねす思い付いたけどプログラム書けまちぇーん時間ありまちぇーん」とか情けねぇ事ほざいてっから手伝ってやってたんだろボケ。
資本主義?知るか。おめーのアホみてーな妄言と社会貢献(爆笑)に付き合ってやったんだから金よこせ。てめーがやりもしねーこと手伝ってやってんだよ、履き違えんな。
AIに仕事奪われる底辺の泣き言?ああそうだなw。じゃあ俺の何百倍の労力でアホの妄言実現する仕事してくれよスーパーエンジニアさんよ。出来んだろ?C言語出来るスーパーエンジニアさんならよ?
まぁ分かるよwどうせ大したことないんだろ?匿名でくらいイキりたいよな?すげーエンジニアさんよ。
この程度でエンジニア名乗るな?やだよーんw
俺みたいな底辺でお前ら誇り高きエンジニアの積み重ねたものをぶっ壊してやる。お前の会社も、プロダクトも、SNSも、検索結果も、底辺ITワナビの💩まみれにしてやる。モラルのかけらもないユーザーで埋め尽くしてやる。ポリコレとかツイフェミみたいな話通じないクソカスで埋め尽くしてやる。
パリピ孔明に「民草」という言葉が出てきて、 おそらく意味としては 「何の才能もなく平凡だが、毎日を一生懸命に生きてる人々」 みたいな意味なのだろうが、 最近、どうもこの言葉に嵌ってる。
http://blog.livedoor.jp/advantagehigai/archives/66112831.html
という記事を見つけたのだが、ここでは開成と麻布の対比として、 仮に両方とも、10の努力をすると100点をとれるとすると、 開成生は12の努力をして120点をとりにいこうとするが、 一方で麻布生は8の努力をして100点を狙う省エネ戦法で行くのかというと それどころか3の努力で80点を取りに行く精神性があると書いてある。 だから麻布生はトップ(国王)になれないのだ、ということだ。
これは中学受験にも問題があり、 麻布の入試は明確に、3の努力によって80点をとれる子を選抜している。 麻布の入試はよく、対策不能と言われるが、 そういう、ゴリゴリに努力したとてとれない問題を出すことによって、 超地頭キッズを選抜しているのだ。 偏差値では足りてたけど、落ちたという場合、 それはたぶん、地頭が足りなかったのだ。
麻布生はまさに「民草」とは真逆にある存在だ。 それ故に、おれは民草という言葉にハマってるのだと思う。 民草は、12の努力をしても30点しかとれない人たちのことだろう。 ガイジすぎて笑ってしまう。 まさに草だ。
さて、民草という言葉に最近おれが突然ハマり始めたもう1つの理由はおそらく、 最近になってようやく民草というものの存在に気づいてしまったからだと思う。 何を言ってるかというと、おれは民草の存在を最近まで感じたことがなかった。
おれが通った幼稚園は少し特殊で、その中でもよく遊んでいた子に TくんとNくんがいるが、ともに早稲田と慶応に進学したと聞く。
小学校は公立だが、今思い返すと、「あきらは特別だから」と先生に言われていて、 その時は何のことかわからなかったが、今思うとそういうことだったのだろう。
おれの親は早期教育に反対していて、3年生になるまでは家庭学習は一切しなかった。 そのため、学校の成績はそれほど良くはなく、この前たまたま押入れの中から当時の成績表を見たが、 それはまぁ、ひどいものだった。
3年になると家庭学習も多少やりはじめ、そうすると成績が一瞬でトップクラスになり、 秋には地元の最難関中学受験塾に合格してしまった。 ここの塾に入るための試験はかなり難しく、かなりの子が国立や私立の小学校か、 あるいは低学年向けの講座でゴリゴリに仕上げてきた子だった。 一方でおれは学校の勉強ではトップクラスだったものの 中学受験の勉強はしてなかったので不利だったが、 試験中にすべてその場のノリで解いた。 問題はパズルのようなものが多く、そもそも麻布栄光向きの子を 選抜するための試験だったので、それもおれには向いていたのだと思う。
入塾してからも一気に成績を伸ばし、 4年の秋には四谷大塚の組分けテストがあったが、 ここでも無事C会員に合格。 C会員の世界だと半分くらいは御三家に合格するから、 ざっくりいうとこの時点で麻布や栄光に行けることはほぼ確定した。 その後もそれなりに勉強はしたが、陸上部のキャプテンとして陸上大会に出場したり、 自らミニ四駆部を立ち上げたり、デジモンの転売業をやってボロ儲けしたり、 3以上の努力はしなかった。
結局、無事に麻布中学に進学し、超地頭キッズたちと楽しく6年間過ごした。 その後の大学受験は、高3の時に受けた鼻の手術がまずくエンプティノーズになったために残念ながら破綻したが、 あれがなければやっぱり3の努力で東工大に進学してたと思う。 おれは、東工大で一番になり、MITに交換留学することが夢だったのだ(英語だけはそれなりにやり準一級までとってたのはこのため)。 結局その後京大に行ったが、 やはり民草とは程遠い世界だった。
新卒で入った日立製作所も、周りには修士以上が応募条件なので、 やはりここでも民草には会えなかった。 実のところ、それ以降の職場でも、特殊な場合を除くと全員修士以上だった。
民草に出会ったのはようやく最近のことだ。 修士号もないやつがエンジニアリングをやるということが おれにはどういうことなのかさっぱりわからないのだが、 とにかく、民草学歴であっても、自分なりに創意工夫してエンジニアリングっぽいことをしてる 人たちがこの世には存在するということがようやくわかってきた。
まぁ、存在することはわかったとしても、 どうして彼らが自殺しないのかがよくわからないのだけど。 何が楽しくて生きてるの?
詳しいプロフィール: https://anond.hatelabo.jp/20230415043128
今年は昇給と株高で見込み見込み年棒が2000万だった。27歳になり変化があったので備忘録代わり。
新卒380万→900万→1500万→2000万(昇給で20%ベースアップ&株高)
学生時代に留学をしたり、英語を真剣に勉強したのが効いて2社目から年収が激増した。
2社目からは完全に英語で仕事をするようになり、その経験から3社目に転職した。
それぞれ短い間しか在籍しなかったが、エンジニアの仕事なんて所詮1年もいれば全て習得できるものばかりだったので、すこし話を盛ればいくらでも就活エピソードをつくることができた。
新卒で年収1000万以上くれる会社に入れるのがいちばんいいが、それは難しい。
(ちなみになんで新卒で入るのがいいかというと、高い年収くれる会社で1から人間関係つくったり仕事を覚え直す必要がなくなるから。エンジニアでも会社が違えば仕事は多かれ少なかれ異なってくるし、偉くなるためにはそれなりのテニュアが必要。若くしてシニアになりたいなら、新卒で入るのがもっとも早い。ちなみにおれはシニアですらない。)
おれみたいな凡人ケースを仮定すると、以下がもっとも再現性ある高年収サラリーマンエンジニアのなり方だと思う。
1社目: 誰でも入れそうな年収300~500万くらいの開発企業に入る。1~2年の開発経験を積んで、得意分野をひとつつくる。(FE, BE, APP, INFRAなんでもいい)
2社目: その分野の経験者枠として色んな会社にチャレンジする。高年収を目指すなら英語を使う環境が良い。700~1000万くらいのオファーを狙う。入社したら面接で話せるようなエピソードをつくれるようにエンジニアとしてのリーダー経験を積む。シニアタイトルが得れるとなお良い。
3社目: 外資系の会社のミドルレベルを受ける。特殊なコーディング面接、システム面接、STARメソッドなどの準備が必要なので長期的な闘いになる。どの外資系でも落ちて半年くらいするとまた受けれるようになるので、宝くじだと考えて面接は受け続ける。(ここ大事)
オファー額は今の相場でだいたい1500~2000くらいになると思う。入社したらあとは外資系でグルグルするなり、転籍や昇進目指して社内の仕事を頑張る。
だいたい未経験から最短で3年、英語が苦手だったりエンジニアリング適性が高くないと長くて10年くらいかかると思う。キャリアが長くなればなるほどリーダー経験は重視される。
は事実だし、その上で
からな。彼が守りたいのはエンジニアリングでも本来の意味での競技プログラミングでもなく、Atcoderというサービスと自分の財布に過ぎない。
カルトと同じだよ。
そもそもの論点として競プロがちょっとできてもエンジニアとしては「ハイスキル」ではないってことなんだよね
もちろん日本のSWEは、昔の自分もふくめて、アルゴリズムとかデータストラクチャなんか知りませんやってこともありませんという人が普通にいるし、ひょっとしたら大部分だけども
競プロは少なくともその二つとか計算量のBigOはわかってないと出来ないという意味で比較で言えばハイスキルではある
ただ、実際のシステムの開発では例えばダイクストラをA*にしましょうなんてことはないわけで、アルゴリズムいるなら自作だし
そういう場面も滅多にないのでOOPとかDDDとかの「実践」、後で機能つけるとか変えるときに数十数百億円流れてるってプレッシャーの中どれだけ簡単に早く確実にやれるかという技術と経験と実績が大事なんだよなあ
世の中の「エンジニア」のほとんどがソフトウェアエンジニアリングというよりはちょっとDayforceのレポートの設定がうまいくらいを求められてるのはその通りなんだけどね
職場の友達にゲーム超うまいやつがいてコンテスト?競技?みたいなのでそこそこ勝っちゃうくらいで超難しいと思うし俺は絶対無理だけど
だから仕事でどうかってキーボード打つのが速いくらいなんだよね
仕事は仕事なんだから仕事ができなきゃ「俺は難しいことをやってきた!」とか言っても全く意味ないわけで
ソフトウェアエンジニアリングってアルゴリズムを知ってる、その場でかける、なんて超狭い部分だから
例えばウチの職場で競プロが!っていったら「おおすごいじゃん」くらいには言ってもらえると思うけど「まだまだだな」ってのは全員の目に明らかだと思う
競プロでGAFA入れないしその競技で億かせげるわけでもないし
まだゲームのが稼げるよね
やはり休日は暇つぶしが必要だと思い、Kaggleでmovielensデータセットで実験を行った。
最もシンプルなモデルとして、ユーザー×アイテムの行列に対する類似度を算出する方法で、類似ユーザーTop n人のレートの平均値を算出し、Top mのアイテムを出す。
これでNDCG@100で0.36ぐらいなので、ベースラインとしてはまあそのぐらいだろう。
実際、SOTAモデルを見ても、NDCG@100=0.4253ぐらいしか達成していない。
https://paperswithcode.com/sota/collaborative-filtering-on-movielens-1m?metric=nDCG%40100
Kaggleでのコンペは、精神を疲弊しそうだし、自信もないので参加する気はない。
こう、なんというか、それなりの精度のベースラインモデルをササッと作るぐらいで丁度いい。
ところで、自分の7年の業務経験のスキルセットがどの程度なのかというのを視覚化してみたら、多分以下のようになると思う。
genre | level |
コーディング | ★★★★ |
アルゴリズム | ★★★ |
インフラ | ★★ |
機械学習 | ★★★ |
コミュニケーション | ★★ |
ビジネス理解 | ★ |
データ視覚化 | ★★ |
統計学 | ★★ |
実のところ「機能要件をどう実現するか」というエンジニア思考なので、あまり統計科学的な思考は身についていない。
といっても薬学研究の発表があれば「薬の作用・副作用の効果なのか、病気の症状によるものなのか区別がついていない」ということを指摘できる程度の批判的思考は持っているので、
「科学」と名のつくところに科学とは程遠い政治が存在することは知っている。
つまりエンジニアリングが好きで、科学が嫌いなのは、その政治性である。エンジニアリングは、作って見せればそれで実証できるのが好きである。
最後に、定量化するのが最も難しいが、それに劣らず重要な改善のカテゴリーを紹介しよう。
難しい数学の問題を解くように言われたとき、頭に浮かんだことを即座に答えなければならないとしたらどうだろう。最も単純な問題を除いて、苦労するのは明らかだろう。しかしつい最近まで、LLMにはそうやって数学の問題を解かせていた。その代わり、私たちのほとんどはスクラッチパッドで段階的に問題を解いていき、その方法ではるかに難しい問題を解くことができる。「思考の連鎖」プロンプトは、LLMのそれを解き放った。生の能力は優れているにもかかわらず、明らかな足かせがあるため、LLMは数学が苦手なのだ。
私たちはここ数年で、モデルの「足かせを外す」ことに大きな進歩を遂げました。これは単に優れたベースモデルをトレーニングするだけでなく、アルゴリズムの改良によってモデルの能力を引き出すものです:
足場作り。CoT++について考えてみよう:ただ問題を解くようモデルに求めるのではなく、あるモデルに攻撃計画を立てさせ、別のモデルに可能性のある解決策をたくさん提案させ、別のモデルにそれを批評させる、といった具合だ。例えば、HumanEval(コーディング問題)では、単純な足場作りによってGPT-3.5が足場なしのGPT-4を上回った。SWE-Bench(実世界のソフトウェアエンジニアリングのタスクを解くベンチマーク)では、GPT-4は~2%しか正しく解くことができませんが、Devinのエージェントの足場があれば14-23%に跳ね上がります。(後ほど詳しく説明するが、エージェントのアンロックはまだ初期段階に過ぎない。)
ツール:もし人間が電卓やコンピュータを使うことを許されなかったらと想像してみてほしい。まだ始まったばかりだが、ChatGPTはウェブブラウザを使ったり、コードを実行したりできるようになった。
エポックAIによる研究によると足場作りやツールの使用など、これらのテクニックのいくつかを調査したところ、このようなテクニックは多くのベンチマークで通常5~30倍の効果的な計算量の向上をもたらすことがわかった。METR(モデルを評価する組織)も同様に、同じGPT-4ベースモデルからのアンホブリングによって、エージェントタスクのセットで非常に大きなパフォーマンスの向上を発見しました。
https://situational-awareness.ai/wp-content/uploads/2024/06/metr_gains_over_time-1024x597.png
これらをコンピュートとアルゴリズムの効率で統一した実効的なコンピュート規模に当てはめることは困難ですが、少なくともコンピュート規模の拡大やアルゴリズムの効率とほぼ同規模の大きな進歩であることは明らかです。(また、アルゴリズムの進歩が中心的な役割を担っていることも浮き彫りになっています。0.5OOM/年の計算効率は、すでに重要なものではありますが、ストーリーの一部に過ぎません。)
「アンホブリング」こそが、実際にこれらのモデルが有用になることを可能にしたのであり、今日多くの商業アプリケーションの足かせとなっているものの多くは、この種のさらなる「アンホブリング」の必要性であると私は主張したい。実際、今日のモデルはまだ信じられないほど足かせが多い!例えば
ここでの可能性は非常に大きく、私たちはここで急速に低空飛行の果実を摘んでいる。これは非常に重要です。"GPT-6 ChatGPT "を想像するだけでは完全に間違っています。 GPT-6+RLHFと比べれば、進歩は段違いだ。2027年までには、チャットボットというより、エージェントのような、同僚のようなものが登場するだろう。
続き I.GPT-4からAGIへ:OOMを数える(8) https://anond.hatelabo.jp/20240605210232
社会人になってからのぼんやりした目標でITを極めたいという思いがある。
一分野に特化したタイプではなくIT領域におけるオールラウンダーのような総合格闘家のような存在。
まずITを極めるとは具体的にどういう状態なのか。そのためには何をすればいいのかを考察する。
まずITを主要トピックに大別する。必ずしもMECEではない。
そしてどういうことができたらITを極めたと言えるかを思いつく限り列挙してみる
次は具体的に列挙した例について解像度を上げてどの要素に分類されるものかを考えた上で、それを極めるには何をすればいいかを考える。
あまりに理不尽なことでクライアントと言い合いになったので、多少ボカして顛末を記す。
私の会社でとある商品をオンライン販売しており、その在庫管理システムのようなものを必要としていた。
それでネットで検索して「システム構築はお任せください」というシステムインテグレータに見積もりを依頼し、発注することになった。
概ね順調にシステムが出来てきたころ、私と先方のシステムエンジニアとの会話でこのようなことがあった。
先「それなら良かったです」
私「一点いいかな?受注してから発送作業者が作業に取り掛かるまで、現状だと手動で見に行かなければならない。ここも改善したいのだがいけるかな?」 ※特定を避けるためボカしてます
先「なるほど・・・その場合は人が常駐している必要がありますね」
私「その作業、君がやってくれるかな?」
先「えっ?」
私「えっ?」
となって空気がおかしくなった。私の言い分はこうである。「システム」は業務の工程全体を表すのであって、ソフトウェア的な部分だけを表すワードではない。
だから「システムエンジニア」を名乗るなら、ソフトウェア面以外の箇所も改善するのが当然ではないか、というのが私の理屈である。
しかし先方の言い分はそうではない。システムエンジニアはソフトウェアシステムだけを改善し、それ以外は関与しない。
だからソフトウェア改善で対応できない箇所は「システムエンジニア」だから対応しないというわけである。
私にとっては、一体何を言っているんだという話である。システムという言葉を軽視しているというか、濫用しているのではないか。
ソフトウェアも立派なシステムであるが、これは株式会社と株式会社のやりとりである。
ビジネスがシステムの根幹であって、ソフトウェアはその内部のいち部分でしかないことは明白ではないのか?
結局そのシステムインテグレータは、ソフトウェア以外のシステムは対応しませんということだった。私にとっては片手落ちの気分である。