[概要]
生成AI市場は非常に変化が早く高速なデリバリーが求められる環境下のため、必然的に開発速度の向上を目指す必要があります。
そのため弊チームでは、より良いものを取り入れるための技術選定の工夫や、エンジニアがより開発のしやすい環境を整えるための取り組みを積極的に行なっています。
そんな0->1の新規サービスの開発チームで、エンジニア一丸となり様々な取り組みを始めてから約1年経ちました。
(3ヶ月時点での記事: https://zenn.dev/aishift/articles/ce9783a0d7acd0)
[話すこと]
下記の事柄について良かったこと、つらみを沢山話します。
業務に関する大規模ソースコードから趣味レベルのものまで、基本的に全ての開発作業をNeoVimで行っています。
LspやDap、FuzzyFinder等々の機能を自前で入れる必要があるNeoVimですが、それ故の良さに「カスタマイズ性の高さ」があります。要は自分が求める機能を自分で実装できます。
今回はNeoVimをさらに強化する為にIDEであるIntelliJを実際に使用したりVimMasterの動画を見て便利機能を取り込んだ話や、なぜ自分で実装する工数を使ってまでNeoVimなのかについて話すセッションになります。
また、Vim系エディタでチーム開発を進める上で重要になるのがTUI(terminal User interface)の話です。
最近の「Rust製」の勢いを踏まえて、VimやTUIを活用した「Terminal IDE」(個人的命名)についても話します!
本トークでは、私たちが Architecture Decision Record (ADR) を導入してからの 3 年間の経験と学びを振り返ります。今では社内の複数の開発チームに導入されている手法です。
ADR を導入する前の期待と、実際の成果、また運用中にどのような課題が生じ、どのように対処してきたかを共有します。
ADR を運用してきた実際の経験を共有することで、ADR の運用に対する理解を深め、他の開発チームが同様の手法を導入する助けになることを目指しています。
AWSにおいて「サーバーレスアーキテクチャ」は非常にメジャー、かつ多くのアプリケーションで採用されいるアーキテクチャです。
そしてその中核を担っているのはAWS Lambdaで、数多くの処理をLambdaで行っていると思います。
しかしその結果、Lambdaの数が膨大になり、金銭コストや単体テストなどの管理コストが負担になってしまうという問題もあるのも事実です。
そこでこのセッションでは「Lambdaレス」という、「あえてLambdaを使わない」というサーバーレスアーキテクチャを紹介するとともに、
「Lambdaレス」を採用することでどのようなメリットがあるのか?逆にどのような点がデメリットなのか、そして「Lambdaレス」のユースケースは?などをお話ししたいと思います。
また、もちろんAWSだけではなく、AzureやGoogle Cloudにも適用できる内容になります。
CloudbaseではCNAPP(クラウドネイティブアプリケーション保護プラットフォーム)製品を提供しており、発表者も日々脆弱性スキャンの機能を開発運用しています。
このセッションでは一般的にtrivy、vuls、syft/grypeなどに代表される脆弱性スキャナのソフトウェアのバージョンから脆弱性データベースを突合し、ライブラリやパッケージの脆弱性を検知する仕組み、実装方法を解説します。
昨今、政治資金に関する問題が世間を賑わせている。政治資金に関しては我が国に政治資金規正法という法律があり、これに基づき政党や政治家個人の政治資金の支出入はすべて政治資金収支報告書という形で総務省のHPなどで多くが公開されている。しかしその中身は紙の書類をスキャンしただけのPDFデータで、政治資金の詳細な集計や分析は困難な状況となっている。
この問題を解決するために発表者は趣味のプログラミングの一環として、オープンソースのOCRエンジンなどを用いて政治資金収支報告書の解析・分析プログラムを実装し、これらを最終的に【政治資金データベース】というWEBサービスの形にまとめて公開した。
本発表では政治資金の問題の背景や先人たちの取り組み、そして政治資金データベースの今後の開発の方向性やプロジェクトのオープン化、コミュニティー活動化の可能性を探り、実現したい未来の政治活動や政治資金の姿を示したい。
マネジメント未経験から20人ぐらいの開発組織のCTOになれた経験を通じて、将来、CTOやEMを目指す方が「自分でもできるかも?」と思ってもらえるような内容をお話しします。
コロナ禍に社会人になり今年で5年目です。
キャリアの半分以上をCTOとして過ごしてきているので技術以外ゼロからのスタートでした。
そんな僕でもマネジメントを学び、採用を学び、リファラルで集まった数名の開発組織から20人ほどの開発組織にまで成長させることができました。
その経験を経て学ぶべきことやマインドについてお伝えします。
下記のような内容を具体的にはお話ししようと思っています。
動画配信サービスには、ユーザーが快適に使用するための多くの工夫が凝らされています。再生ボタンを押してからの素早い再生、効率的な動画のエンコード処理などがその一例です。今回、自宅サーバーで1から個人開発した動画配信サービス「YuoVision」では、これらの課題に取り組みました。
この発表では、本サービスの作成において工夫した点や苦労した点についてご紹介します。
対象者
エンジニアがフルスタックに開発するだけではなく、デザインやビジネスの領域に越境して顧客課題を中心に開発することでプロダクトの提供価値は飛躍的に向上します。
本トークではプロダクト志向を持つエンジニア達が未来を切り開くために「プロダクトエンジニア」という向き合い方を紹介します。
日本で最もデジタル化の遅れた物流産業で業務系SaaSのPMFをするまで試行錯誤を含めてプロダクトエンジニアの開発方法を説明します。
これにより、多くのエンジニアが事業の成功や顧客の喜びの声を得られるようにすることを目指します。
新規事業や新規プロジェクトは多くの会社が取り組んでいると思います。
私はエンジニアとして、テックリードとしてなど役割を変化させつつ事業やプロジェクトに関わってきました。
その中には立ち上がってすぐに撤退したものや、プロトタイプの時点で終わったもの、構想だけで終わったものなどもありました。
今回は、過去の異なる失敗の中で自分が悩み学んだことから何を次につなげて今どのように新しい事業に挑んでいるのかをお話ししたいと思います。
あなたは最近「顧客提供価値が大事」とかいう言葉のもとに、新しい技術や攻めた設計をあきらめていませんか?
私たちエンジニアにとって、顧客の要望に応えることはもちろん重要です。
しかし、それが理由で自分たちの技術的な理想を諦めるべきなのでしょうか?
私はそうは思いません。
このセッションでは、誰になんと言われても「いい開発環境」を作りたくて頑張っている私の取り組みと、その成果についてお話しします。
このセッションを通じて、最新の技術トレンドを追いかけることと、堅牢な設計を維持することのバランスをどう取ってきたか、そしてそれがチームやプロジェクトにどのように役立ったかを共有します。
このセッションで触れる内容
・devcontainersを活用した開発環境構築
・PlanetScaleなどのサーバーレスDB
・なにより「エンジニアにとって楽しいことってなに?」ということ
皆さんモブプロやってますか?私の所属する企業では週に2,3回モブプロを行っています。
主な目的は以下の3つです。
それぞれを簡単に説明すると、
1つ目はフルリモートなのでコミュニケーション機会を増やしたい
2つ目は技術力に幅のあるチームなのでモブプロを通して技術の共有をしたい
3つ目は関わっていないプロダクトの仕様を知る機会を作ってサービスの全体を把握したい
ということを目的としています。
一定の効果を感じ、1年以上継続して行っております。
これらの詳細について、お話しさせていただきます。
新卒時代、様々な人から「視座を上げろ」「メタ認知は大事」と言われました。しかし、育む方法がわからず困っていました。
成人発達理論に出会い「全部書いてあるやん!」と驚きました。メタ認知のレベルが定義され各段階における特徴と移行期の障壁がまとまっていたからです。
技術広報チームマネージャーとして働く私が、様々な価値観・専門性を持つ人と折り合いをつけながら働けるようになった実体験を話します。
対象
話すこと
私は株式会社ヌーラボで会計周りのシステムのプロダクトオーナーをしています。
知名度の高い弊社製品Backlogとは異なり、非常に重要だが地味な領域です。それゆえユーザーとの接点が持ちにくく、ユーザーの声を聞くことに難しさを感じていました。
巷ではユーザーインタビューの重要性が至る所で囁かれていますが、そもそもユーザーを見つけられない。。。ってことはないでしょうか。
どのようなシステム開発にも応用可能な、以下の内容についてお話しします。
概要
エンジニアにとって、アウトプットすることは重要な活動の一つです。
コロナ禍を経て、技術コミュニティが以前よりも活況になり、アウトプットとしての「登壇」が重要になっています。
一方で、最初からアウトプットが得意というエンジニアは少なく、特に「登壇」は経験の数が物を言うため、心理的ハードルが高く、上達が難しいものです。
私たちの組織では、アウトプット経験を養うために社内 LT 会を発足し、研鑽のための場を作っていきました。
本発表では、組織で行うアウトプットへの考え方・取り組みや、社内 LT 会を発足する際の進め方や組織内の風土作り、開催・継続の中での学びについて話します。
・エンジニアにとってのアウトプットとは
・組織で続けるために考えたこと
・組織の変化や今後の課題
・組織でアウトプットする文化を醸成するためのヒント
・開発業務以外の取り組みへの動機づけ
スタートアップのQAエンジニアとして、品質マネジメントを行っています。
このトークでは、アンチパターンとベストプラクティスを交えて、
品質マネジメントにおけるリスクマネジメントの勘所である"プロジェクトリスク"と"プロダクトリスク"の見分け方ををお伝えします。
〈話すこと〉
・JSTQBに基づくリスクマネジメントの概要
・リスクが顕在化する要因と開発プロセスへの影響(実例)
・プロジェクトリスクとプロダクトリスクの違い
・リスク識別のベストプラクティス(自社の取り組み)
・今、必要とされる品質と品質マネジメントの必要性
皆さんが未来のリスクマネジメントに役立てられることを願い、一般論と経験を交えて説明します。
創業(創刊)から140年以上の歴史を持つ長寿企業であり、メディア企業として保守的な体質を持つ当社は、10年以上前からソフトウェア開発の内製化に取り組んできました。その取り組みは実を結び、現在では全社で70人を超える内製エンジニアを抱える組織に成長しています。
しかし、プロダクトマネジメントについては未熟な部分があり、開発者とビジネス部門の双方にストレスがかかる状況が続いていました。この数年間でその問題を解決し、透明化されたプロセスを導入することで、全員が納得できる状態を構築しました。
今後数年は、生成AIという新しく破壊的なテクノロジーを取り入れ、さらなる進化を遂げる必要があります。保守的なメディア企業でありながら、長期間生き延びてきたのは、新しいテクノロジーを取り込む力と環境変化に対応する能力があったからです。これらの点について、さらに詳しくお話ししたいと思います。
コロナ禍においてはオフラインでの勉強会の実施が難しく、オンライン勉強会として YouTube Live のようなライブ配信プラットフォームや、 Zoom などオンライン会議プラットフォームを使うことがありました。
しかしオンライン勉強会ではオフラインであった交流や雑談が起こりづらく、淋しい経験をしたことはありませんか?
このトークでは近年発展しつつある VRSNS とそこで行われる勉強会、また私が「分散システム集会」として実施している勉強会の開催例をご紹介します
この発表では、ソフトウェアの拡張を小さくとも開発したことで技術の探求につながってとてもよいぞと経験ベースで共有していきます。
発表者は、sphinx-new-tab-linkという拡張を公開しています。
これはPython製のドキュメンテーションツールSphinxの拡張で、生成したHTML中の外部リンクが常にブラウザの別タブで開くようにするというものです。
自分用に作って公開したところ、ユーザからのissueを通じて多くの学びがありました。
知っているSphinx拡張のソースを読み漁ってissueに対応しています。
一番の学びは、まさか自分が実装するとは思わなかった、動的にクラスを継承するメタプログラミングでした
何か小さな拡張を作って自分も公開してみようかなと思ってもらえたら嬉しいです
皆さんはSIP (Session Initiation Protocol) というプロトコルをご存知でしょうか?
現在、電話の自動応対を行うプロダクトに携わっており、SIPを用いた外部システムとの連携に取り組んでいます。
SIPを用いることでインターネット上での通信が可能となり、公衆回線と比較しより柔軟に連携を行うことが可能となります。
しかし、このプロトコルは比較的に情報が少なく、さらにCPaaSやCTIベンダーごとの独自仕様も考慮する必要があるため、キャッチアップが難しいものでもありました。
そこで、このセッションでは、なぜSIPでの連携が必要だったのか、どの部分でキャッチアップに苦労したのか、また外部とのコミュニケーションで直面した課題について発表します。これにより、SIPを用いる際のユースケースやSIPを取り巻く状況について、参加者の皆さんに有益な情報を提供できればと思います。