エンジニアは開発だけではなく、仲間集めを会社から求められることもあります。
多くの採用フローでは最初にカジュアル面談というステップがあり、候補者に会社について興味を持ってもらう場が存在します。
採用フローの入り口であり、ここを上手くできなければその後の面接に繋がらない大切な会ですが、慣れるまではなかなか上手く行かなかったり、何話したらいいのか分からないことも多いと思います。
自分もここ1年ほどで週1〜3回カジュアル面談を担当しましたが、最初はめちゃめちゃ難しかったです。
この経験を踏まえて、採用におけるカジュアル面談ってどういう準備をして、何を話して、どうやって次の面接につながればいいのかお話します。
マネジメント、大変ですよね。
マネジメントはいわゆるヒト、モノ、カネや事業、チームに関わる抽象度が高い課題を無限になんとかしていく必要があります。
様々な事業や企業がありますが、ヒトと向き合うところだけはあらゆるところで共通だと思います。
このLTでは、あくまで自分がやることになったマネージャーの仕事を少しして、エンジニアリングマネージャーに興味がある人にこんな仕事だよとお話した上で、エンジニアがとにかく戸惑うであろうヒトのマネジメントについて話します。
将来エンジニアリングマネージャーやってみようかな〜だったり、なんかメンバーや上司、部下との関係上手く行かないな〜って人に聞いてもらえると嬉しいです。
WebAssemblyはWebブラウザでの利用にとどまらず、エッジコンピューティングでの実行やプラグインとしての記述手段、マイコン用のランタイムまで存在します。
本トークではWebで動くWebAssemblyとは一味違う、WebAssemblyのWebブラウザの外の話をご紹介します。
また、 PHPをWebAssemblyバイナリにする方法を模索し、マイコン上でPHPを動かす試みを行います。(登壇までに実演できることを期待しつつ……現在はPHPバイトコード→Javaバイトコード→WebAssemblyが最有力)
このセッションでは、 require と use 宣言は似てそうだけど違うということが分かったということについて話します。
私は、素のPHPからPHPを勉強し始めました。その時は、「他のPHPファイルを読み込むときは require を書く!」でとにかくファイルの先頭に require を書いて読み込んでいました。
そして、フレームワークも勉強したいと思いLaravelを始めました。すると、ファイルの中には require を先頭には書いておらず、 namespace と use がたくさん書いてありました。
自分でフレームワークもどきを作ってみて、 namespace と use を使い、PHPでブログサイトを作ってみました。namespace と use 宣言、 require は書く必要があった!ということがわかりました。
私は今までマネジメントに携わらず、メンバーレベルのエンジニアとして開発業務に携わっていました。
しかし最近小規模(4人)チームのリーダーを任され、どちらかというとマネジメントよりの業務の役割が増えています。
その際に気づいたこと、失敗したこと、意識したこと、戸惑ったことを赤裸々にお話します。
業界歴3~4年目のマネジメント系業務に挑戦するエンジニアにおすすめのトークです。
『リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック』(Boswell & Foucher)
エンジニアのみなさんなら、一度は読んだことがあるのではないでしょうか。
私はブライダル専門メディアを自社開発・運営している会社で保守開発を担当しており、
現在はサイトの一部機能を削除する案件にジョインし、開発を行っています。
Laravelで構築された弊社のサービスは、約20年続く結婚式場のクチコミサイトです。
改修に改修を重ね長年運用されてきたサイトの機能を削除することは、簡単ではありません。
例えば、以下のような問題に苦戦しました。
・表記揺れをしている、または意味を汲み取れない関数名・変数名である
・あちこちでクラスが継承され、メソッドやViewファイルの依存関係が複雑である
・おそらくもう二度と使われないプログラムをきれいさっぱり削除できているか、不安になる
この経験から、普段からシンプルで美しいコードで運用・保守していくことの大切さを痛感しました。
本トークでは、歴史ある大規模サービスの機能を削除する上で直面した問題と、そこから得た学びを共有します。
“機能削除”という観点から、『リーダブルコード』をどのように意識して実践していくべきか、一緒に考えませんか?
Laravelのバージョンアップを行う予定が、プログラムをすべて書き換える「リプレイス」をすることになったお話です。リプレイスをすることになった背景や進め方、よかったこと、大変だったことを、技術的、組織的な観点でお伝えします!
PHPフレームワークとして広く利用されているLaravelの機能の一つ、Collectionの魅力を活用例も交えながらお伝えします!
Collectionの強力なメソッドを活用すれば、一見複雑な処理でも簡単かつシンプル、そして分かりやすく実装ができることを実際の悩みや解決などの事例も交えながらお見せします。
辞書型のアイテムがたくさん入ったCollectionから特定のプロパティだけ抜き出すには…?
特定の条件に沿ってCollectionの要素を選別するには…?逆に除外するには…?
似たようなことができそうなこのメソッド、どう使い分ける…?
などなど、最新版では100を超えるメソッドの中から実際に活躍したものを厳選してお届けします!!
皆様は、ペアプロに行ったことはあるでしょうか、ペアテストはどうでしょうか?
あまり有名ではないので、やったことがないです。
自分では、万全だと思っていたのに、気が付かなかった、変な挙動とか、想定の操作とか、「僕のPCでは動きますが」といったのに、QAに突き返されたことはありませんか?(私は、ちなみに私はQAです。)
ペアテストとは、エンジニアとQA2人1組もしくは3人1組で一つのPCを囲み行うテストのことを言います。BDDやAgileの開発手法でも取り上げられることがあります。
品質上昇はもちろん、自分が気付かないエッジケースの不具合や、気が付かなかった仕様漏れ!などに、効果的で、手戻りを防ぐことができ結果、開発速度も向上します。
私は、エンジニアではなく、QAですが、皆さんに体感してみて頂きたい!!
内容
ペアテストの簡単なやり方や実例
ペアテストの私のお勧めするTips
これで、あなたも見落としによる不具合などを減らしていきましょう。
みなさん、PHPのEnumは使っていますか?
PHP8.1がリリースされてEnumが使えるようになってから2年が経ちました。
定数の代わりにEnumを使うことで、より型安全で管理しやすいコードを書くことができるので
ぜひ皆さんにも使っていただきたいと思っています!!
このLTでは、僕が一番便利だと感じたEnumを使ったバリデーションの書き方をはじめに、
Enumの利点や実際の活用方法について簡単な例を交えて、
皆さんがEnumを使用する際のメリットを理解していただけるようお話させていただきます。
現在私が BABYJOB 株式会社で開発を担当している保活サービス「えんさがそっ♪」では、バックエンドは PHP で Laravel、フロントエンドに Laravel の Blade テンプレート + jQuery で構築しています。
最近ではフロントエンド開発への課題感から React の導入を積極的に行っています。
React 導入の経緯としては...
①肥大化した jQuery の管理に限界を感じていた
②流行りの SPA に挑戦したかった
今回は Laravel 製のサーバサイドレンダリングアプリケーションに React を部分導入してみて、感じたメリットとデメリットをお話ししたいと思います。
皆さんは match 派?それとも switch 派?
PHP 8 から待望の match 式が switch 文の改善形として新たに導入されました。 switch 文が抱えがちな潜在的なバグのリスクが軽減され、より使いやすく洗練された構造になりました。
しかし switch 文もまだまだ現役! match 式にはない良さを見つけていきたい!
この発表では、match 式と switch 文の良さをそれぞれ深掘って適切な使い方を紹介していきます。
PHPはインタープリタ型言語であり、一般的にPHPスクリプトを実行するにはPHPインタープリタが必要になります。
これによりスクリプト実行前の事前コンパイルなしに実行できますが、CLIツールなどを配布する際はユーザーの環境にPHPインタープリタを導入する必要があり、Goなど事前コンパイルする言語に比べてポータビリティが低いという意見もあるようです。
もしPHPスクリプトを実行可能なバイナリとして扱えたら、、、?
例えば、ユーザーのPHP実行環境を意識することなくCLIツールを配布できるでしょう。
php-static-cliを使えば、PHPスクリプトを実行可能なバイナリとして扱うことができます。
(bcmath,xmlなどの拡張も同じバイナリに含めることができます。)
本トークではphp-static-cliを用いて、単純なCLI〜DBアクセスを伴うCLIまでをPoCし、PHPの新たな可能性を探ります。
このトークを聞くことで、PHPの環境構築の手間を省き、PHPの新たな可能性を感じることができるでしょう。
Laravel開発でのフロントエンドとしても使用されるVue/Reactは、コンポーネントを分割して開発する手法が多く取り入れられています。
その際、コンポーネント単位での開発を可能にするStorybookを活用し、コーディングはもちろん、Visual Regression TestやUIレビューのような、コーディングの先の運用についても活用してみませんか?
このLTでは、Storybookの開発元であるChroma SoftwareのSaaS「Chromatic」について、下記リストに挙げられる、実際に導入して得られた知見について共有します。
本トークを通じて、Chromaticを導入することのメリットと、導入ハードル突破の知見を共有し、Storybookをもっと活用し、フロントエンド開発をもっとスピードアップする方法を紹介します。
私の所属する株式会社リンケージは、CTOの曽根壮大をはじめPHPコミュニティに関わりの深いエンジニア社員・業務委託が多く働いています。
私は、エンジニア社員に誘われたのをきっかけに、今年の6月に福岡で開催されたPHPカンファレンスに参加してみたのですが、あまりの楽しさと魅力に感動しました。
その結果、その後に開催された沖縄、東京の両方のカンファレンスに参加したり、Xを通してPHPerの方々と交流したりと、もはやPHPerと言っても過言ではない(!)くらいの日々を送っています。
私自身はPHPのコードを書くわけではなく、職種は事業開発出身のプロダクトマネージャーです。
傍から見ると、PHPコミュニティに入っていっても、話している内容も分からないし、うまく交流できないのではないか?と思われるかもしれません。
私がなぜ積極的にPHPのコミュニティに入り込んでいくのか、その理由を「非PHPer」「非エンジニア」という稀有な視点から熱くお伝えします!
◆主な対象者
・PHPコミュニティの魅力をPHPerの外にも広げたい方
・PHPコミュニティの魅力をより知りたい方
・知り合いをコミュニティに誘うための謳い文句がほしい方
◆主な内容
・カンファレンスへの誘い
・PHPerとの出会い
・懇親会という楽園
・Xという理想郷
・PHPerとの出会いをきっかけに変わり始めた人生
「このページ、なんか遅くね?」の犯人はヤス(仮名)によるヒューマンエラーと、MySQLとPHPにあるアイツでした。
皆さんは表示の遅いページがあったらまず何を疑いますか?Javascript?サーバー?そんなとき、RDBのMySQLも疑ってみましょう。ときにはクエリの数文字を変更するだけで大きくパフォーマンスが改善することがあります。
このLTでは、ページの表示を遅くするMySQLのスロークエリ、そしてその原因となる、インデックスと暗黙の型変換についてお話しします。
トークの目的
①PdM・Biz職の方:実力のあるエンジニアとの仕事で自分なりの価値をどう発揮するのかについて、ヒントになることがお伝えできればと思います!
②エンジニアの方:日々のPdMとのやり取りに活かせるような、PdMの視点・悩みをお伝えできればと思います!
トークの概要
・私は2022年4月に新卒入社し、新卒1年目、かつPdM・エンジニア等の経験なしでPdMのポジションで仕事をしていました。(CS出身)
・私が所属する株式会社リンケージでは、プロダクト価値の最大化を考えられる、課題解決能力が高い、「強い」エンジニアが集まっています。
・私はエンジニアの方々と仕事をする中で、「自分がいる意味ある?」と非常に悩んでおりました…(今も悩んでますが)
・本トークでは、「機能を考えない、Whyを考える」など、私なりに見出したPdMとしての価値、及びそこに至るプロセス・悩みをお話します!
PHPは特にWeb開発に適した言語とされ、筆者はバックエンドの実装に用いることが大半でした。
ではPHPが向いていない処理や、ネットに先行事例がない用途の場合はどのように実装すればいいのでしょうか?
その疑問を解決すべく、このトークではネットに先行事例のなかった「オレオレ」ソフトシンセ(CPUによって音信号を合成するソフトウェア)をPHP(とC言語)で自作しました。
この「オレオレ」ソフトシンセを用いて、当日はライブデモを行い蛍の光を演奏します。
このトークを聞くことで、一般的にPHPプログラムでは実装されないようなソフトウェアをも実装することができ、あなたの今後のPHPerとしての可能性を広げることができるでしょう。
対象の方
アウトライン
「Nginxってどんなものなんだろう?」「Webサーバーってどうやって動くんだろう?」―こんな疑問を持つあなたに捧げる、Nginx入門者向けのLTセッションです。
このLTでは、Nginxの基本的な概念から始め、基本的な設定の読み方について紹介します。
対象者
話すこと
「良いサービス」とはなんでしょうか。
たくさんの要素があると思います。
このLTでは「接客態度」に焦点をあて、
自称クレーマーな私の実体験
・オンライン/オフライン それぞれにおける接客で 嬉しかった/嫌な気持ちになった話
・自社サービスは接客力が上がれば友達に自信を持って紹介できるのに!と感じた話
・自社サービスの接客力が上がった結果、仕事へのモチベーションが上がった話
を通じて、
「良いサービスを作る」という重要な課題に向き合う5分間を提供します。
●●●LTを聞くメリット●●●
開発をする際に、利便性や速度、正確さだけでなく「ユーザがどう感じるか」という視点を、新しく持つ、もしくは当たり前に持つことができるようになります。
●●●対象者●●●
・自社サービスのユーザとご自身との関わりが少ない方
・自社サービスをユーザとして使ったことがない方
・システムやコーディング以外についての話も聞きたい方