エンジニアHubは2024年2月26日をもってサービスを終了いたしました これまでサービスをご利用いただきました皆様には厚く御礼申し上げます 引き続き転職をお考えの方は姉妹サービスAMBI、ミドルの転職をご利用ください
Kotlin 1.3をサクッと学ぶ - CoroutineとKotlin/Nativeを触って理解しよう Kotolin入門者に向け、Kotlin1.3に加わったCoroutineとKotlin/Nativeという2つの機能を中心に、実践的なプログラミングのヒントをお伝えします。 今やAndroidアプリ開発には欠かすことのできない言語となった「Kotlin」。2018年秋にバージョン1.3がリリースされ、その後も定期的にバージョンアップが進んでいます。Kotlin 1.3の大きな特徴は、CoroutineとKotlin/Nativeという2つの機能が追加されたことです。本記事では、この2つの機能を中心にKotlinの最新動向について紹介しながら、実践的プログラミングへのヒントをお届けします。 本記事のサンプルプログラムは、macOS上のIntelliJ IDEA Community Ed
スクラムの原則を、いかにして実践するか - 現場にありがちな悩みを吉羽龍太郎に相談してみた スクラムは多くの開発現場で取り入れられており、その原則を学ぶのは簡単です。しかし原則を現実に実行しようとすると、さまざまな課題が……。アジャイルコーチの吉羽龍太郎さんにスクラムの基礎から、ありがちな課題への対処法をたっぷり聞きました。 スクラムは軽量で理解が容易、だけど実際にやるのが難しい 【スクラムの基礎知識】3つの役割を理解する 【スクラムの基礎知識】5つのイベントを理解する 【スクラムの基礎知識】3つの作成物を理解する スクラムを“現実的に”実践する手法 見積もりは誰のもので、誰が作るのか フィボナッチ数列よりも「Tシャツ見積もり」。素早く見積もりを作る手法 スプリントの期間は1週間が計画しやすくておすすめ スプリントプランニングの極意。タスクの粒度は小さければ小さいほど扱いやすい タスク管理
技術的負債を徹底的に解消した話 - オミカレのシステムフル刷新のためにやったことを全部教える 技術的負債、デザイン面での課題など、サービスを構成するシステムを全面にわたってリニューアルしたプロセスを、オミカレの高橋一騎さんが克明に伝えます。 株式会社オミカレでテックリードをしております、高橋一騎(たかはし・いっき/ @ikkitang )です。私たちが提供する婚活メディアサービス「オミカレ」は、2019年3月にシステムのフルリニューアルに踏み切りました。本稿では、このリニューアルのプロセスをできるだけ詳細にお伝えしたいと思います。 さて、「技術的負債」という言葉を耳にすることがあります。なぜ負債が生まれるのか。「品質を犠牲にしてでも早々にサービスをリリースし、短期的にビジネスの速度を上げる」という判断はその理由の一つに挙げられるでしょう。エンドユーザーへの価値提供スピードを得るための見返り
依存モジュールが少ないソースコードを読む - スペシャリスト岡野真也に聞くPythonの読み方と使い方 現在、多くの支持を集めるPython。10年以上にわたりPythonを使い続ける岡野真也さんに、同言語の学び方、使い方を聞きました。 機械学習やデータサイエンスの隆盛に伴い、Pythonは多くの人に使われる言語になりました。GitHubの「The State of the Octoverse 2019」のレポートによると、GitHubリポジトリのコントリビューターから人気のあったプログラミング言語として、PythonはJavaScriptに次いで2位となっています。 「さまざまな課題を、楽に解決できるのがPythonの魅力」と語るのは、10年以上も前からPython・Djangoフレームワークのヘビーユーザーであり続けてきた岡野真也(おかの・しんや/ @tokibito )さん。彼はいか
ペアプログラミングで「強いエンジニアチーム」を作る! ヤフーが実践する全てペアプロ開発の手法 ペアプログラミング(ペアプロ)のメリットや導入方法について、ヤフー株式会社の山下真一郎さんが、フリマアプリ「ヤフオク!」や「PayPayフリマ」での実例をもとに紹介します。 ペアプログラミング(以下、ペアプロ)は、2人のエンジニアが共同でプログラムを書いていく開発スタイルです。メンバー同士での知識の共有や、プロダクトの品質向上が見込めるとされており、多くの企業が導入を進めています。 本稿では、ヤフー株式会社のヤフオク!カンパニー開発本部でペアプロを導入し、現在はPayPayフリマの開発の取りまとめを行う山下真一郎(@shin_yahoojp)さんに、ペアプロに取り組む意義やその手法について解説してもらいました。 なぜペアプロが必要なのか? 質の高いコードレビューとしてのペアプロ ペアローテーション
「単体テスト」再入門! 開発の現場でバグを確実に洗い出す最適な手法と、テストケースの作り方 単体テストの定義から手法、未来の展望までを、日本におけるソフトウェアテストの第一人者・高橋寿一さんが解説します。 ソフトウェアのテストにおいて、最初のフェーズである単体テスト。若手Webエンジニアの中には、いきなり単体テストを任されて戸惑った方もいるでしょう。仕方なく現場で踏襲されているやり方に従っているだけ、ということもあるのではないでしょうか? 今回は、単体テストの定義から手法、未来の展望までを、日本におけるソフトウェアテストの第一人者・高橋寿一さんが解説します。 単体テストとは(各社ばらばらな単体テストの定義を再定義) コードベースの単体テスト 命令網羅(C0カバレッジ) 分岐網羅(C1カバレッジ) よくある(コードベースの)単体テストの間違い 機能単位の単体テスト 例:複雑なソート機能のテス
「テストコードを書く?書かない?」ソフトウェアテストのいろんな疑問をテストのプロに聞いてみた ソフトウェアテストはソフトの品質を高めるためには、欠かせない工程です。では、テスト・品質保証のプロたちは、どんなことに気をつけて、ソフトウェアテストを実践しているのでしょうか。仕様やスケジュール、テストの設計まで、テストにまつわる疑問を、ソフトウェアの品質保証・テストに特化した企業、SHIFT社のお二人にぶつけてみました。 ソフトウェアへのバグの混入を防ぎ、ソフトウェアの品質を高めるためにはテストの工程が不可欠であり、「どうすれば良いテストを実施できるか」というノウハウもまた非常に重要です。では、テストを突き詰めて追求する、スペシャリストのノウハウとは。 今回はソフトウェアの品質保証・テストに特化した企業であり、テストを前提としたアジャイル体制構築のコンサルティングにも専門性を持つ、株式会社SHI
grdの作者が考える、いまフロントエンドエンジニアに求められる「速度という機能」 Webパフォーマンスの改善に、並々ならぬ情熱を傾けるエンジニアの泉水翔吾(@1000ch)さん。氏の手がけるOSSはこの情熱を体現するかのように、パフォーマンス改善にフォーカスしたものが多数あります。なぜWebパフォーマンスにこだわるのか、そして現在のフロントエンドエンジニアに求められる技術を聞きました。 「サイトの表示に3秒以上かかると、訪問者の53%がそのサイトから離脱する」 Googleが公開した上記のドキュメントは、Webの「使いやすさ」とは、スピードと不可分なものであることを示しています。 「パフォーマンスはサービスが持つべき“機能”の一部」と語るのは、『超速! Webページ速度改善ガイド』の著者の一人である泉水翔吾(せんすい・しょうご/ @1000ch )さん。彼は、前職の株式会社サイバーエージェ
「AWSとGCPを“選択可能”にしておく」LIFULLに学ぶ長生きするインフラ構築術 多くの開発に導入されるクラウドサービスですが、LIFULL社では、AWSとGCP、両サービスを同時に使用しているそう。同社のインフラの変遷と、併用の背景を聞きました。 AWSとGCP、「どちら」を「どうやって」使うか サーバの肥大化を阻止するべく、オンプレからAWSへ移行 マイクロサービス化し、「影響範囲」を狭めることで得られたメリット 「使い分ける」のではなく、「両方を使える」ことが継続性を生み出す インフラ構築における技術的な選択肢はさまざまですが、なんらかのクラウドサービスを活用するということは多くのエンジニアが検討する手段でしょう。 昨今ではクラウドサービスは多くの企業から提供されており、エンジニアにとって多様な選択肢が提供される一方、どのサービスを選ぶべきかという悩みもあるでしょう。筆者の周りで
KotlinをKotlinらしく、そして可読性を高く保つ運用知見 - エキスパート長澤太郎に聞く実装のイロハ 近年注目を集めるKotlinはどのように書き、どのように運用するのがいいのか。2012年からKotlinに親しむUbie社の長澤太郎さんに、その経験から得られたKotlinノウハウを聞きました。 2011年7月に登場したJVM言語・Kotlinは、近年多くの注目を集めている言語の1つです。Androidアプリの開発言語としてGoogle I/O 2017で正式採用されたことも契機となり、Kotlinはその存在感を一挙に高めました。 そして、この言語に黎明期から親しみ続けてきたのが、Ubie株式会社の長澤太郎(ながさわ・たろう/ @ngsw_taro )さんです。業務や登壇、執筆活動など、多くの局面でKotlinを活用し、ノウハウを蓄積してきた長澤さんに、Kotlinの言語特性やより
試したいから、作る。ghq、goreの作者motemenの開発は「自分本位」で駆動する 次々とOSSを送り出す株式会社はてなのCTO、大坪弘尚さん。連続開発を支える、発想の源、そしてモチベーションをご本人に伺いました。 エンジニアにとっての強みとは何でしょうか。その答えはさまざまですが、「プロダクトを完成させるスピード」という要素は、“強み”の一つの指標と考えていいでしょう。 「エンジニアの会社」として見られることの多い株式会社はてなの中でも特に「作るスピードが早い」と一目置かれる人物がいます。CTOの大坪弘尚(おおつぼ・ひろなお/ @motemen )さんです。 大坪さんはghqというツールを20代で公開し、コミュニティから高い評価を受けました。それにとどまらず、GoにおけるREPLを実現するツール、goreも続けてリリースし、GitHubで2000以上のスターを獲得しています。常にオー
自然言語処理ってなに?課題は? 研究者に聞く、エンジニアが学術論文を読み解くための技術 多くのサービスに実装される自然言語処理ですが、そもそも一体どのような技術なのでしょうか?東京工業大学で研究にあたる、西川 仁助教に自然言語処理の歴史と現在。そしてどのような課題があるかをうかがい、さらにエンジニアが学術論文を読み解き、役立つ情報を手にするための手法も聞きました。 技術に関する最新の情報を得るための手段は様々ですが、“学術論文を読む”とは、その有力な手段の一つでしょう。しかし、数多くある論文から、自分の目的とする情報をいかに探し出し、いかに読むのが効率的なのでしょうか。そして、日頃から論文にふれる機会の多い研究者の方はどのように論文から情報収集を読み解いているのでしょうか。 今回お話をうかがったのは、自然言語処理研究のフロントランナーとして、東京工業大学に所属し、自動要約の研究をされている
直面する問題を解決したらkaminariができた。Ruby / Railsコミッター松田明のOSS開発の実像 世界中のRubyプログラマに使用されるOSSであるkaminari。これを手がけたRuby / Railsコミッター松田明さんに、開発背景を聞きました。 「これがあったら便利なはずだ」という予測。 あるいは、「これが問題だから、解決する」という現状認識。 新たな技術が生み出される源流にあるものとは、一体なんでしょうか。 Ruby on Rails(以下、Rails)を用いたWebアプリケーション開発において、圧倒的な存在感を放つページネータであるkaminariを開発した松田明(まつだ・あきら/ @a_matsuda )さんの場合は、“絶対に”後者であると語ります。 Rails、そしてRubyのコミッターでもある松田さんは、まさにRubyを用いた開発の最中、先行するソフトウェアに感
スター数4200超! 人気リポジトリ『peco』 開発者(@lestrrat)が語る「使われるOSS」の作り方 多くの人が知る、人気リポジトリの開発の裏側とは? スター数4200超えを誇る『peco』の作者・牧 大輔(@lestrrat)さんに聞きました。 あるひとつのプログラムやツールが公開され、開発を加速させる。 そのツールから生み出されたものが公開され、多くの人に影響を与え、次なる開発を加速させる。 本稿を読む皆さんの多くは、こうした拡散するエンジニアリング、つまりオープンソースというカルチャーの一側面から恩恵を受け、また影響を与えているでしょう。 2014年7月にリリースされたツール『peco』は、まさに“影響を与えた”オープンソース・ソフトウェア(以下、OSS)でした。インタラクティブなフィルタリングツールであるpecoはシンプルな機能ながら、その使い勝手の良さによって、2017
中学生でLinuxカーネルのバグフィックス! 若き天才エンジニア矢倉大夢に爆速成長術を学ぶ 中学1年生でプログラミングを開始。高校時代にプログラミング関連の数々の賞を受賞。そして、大学在学中にグローバルリーダーの育成トレーニングを提供している株式会社TEAMBOXのCTOに就任した矢倉大夢さん。エンジニアとして圧倒的スピードで成長をする術を聞きました。 中学1年生でプログラミングを開始。高校時代にプログラミング関連の数々の賞を受賞。そして、大学在学中にグローバルリーダーの育成トレーニングを提供している株式会社TEAMBOXのCTOに就任。まるで映画やドラマの登場人物のような輝かしいキャリアですが、これは実在の人物。若き天才エンジニア・矢倉大夢(やくら・ひろむ/@hiromu1996)さんの経歴です。 中学時代にプログラミングの魅力に取りつかれて以来、猛スピードでスキルを積み上げてきました。
えふしんに聞く「僕が若手エンジニアならこれを学ぶ!」トップランナーの考える成長戦略 「モバツイ」の生みの親であり、現在はBASE株式会社の取締役CTOを務める、「えふしん」こと藤川真一氏に、「もし、あなたがいま若手エンジニアだったら、どんな成長戦略を採りますか?」と聞いてみました。若手エンジニア必読のえふしん流7つの戦略とは? 「何を学び、どのように技術力を向上させていくべきか」は、若手エンジニアにとって非常に悩ましいテーマのひとつ。 キャリアが浅いころは学習を進める“勘どころ”がないため、なかなか効率の良い技術習得ができません。加えて、過去の時代と比較すると学ぶ対象であるプログラミング言語やIT領域も圧倒的に広範囲になっています。そのため、少し方向性を見誤ってしまえば、無駄な技術の学習に時間を割いてしまう可能性が高いのです。 その課題を解決する有効な方法があります。それは、著名なエンジニ
あるエンジニアが「Kibela」というサービスを考え、リリースするまでのフローを全部教える エンジニアがサービスのアイデアを思いつき、それをリリースするまでにはどのような過程があるのでしょうか。情報共有ツール「Kibela」が世に出るまでのフローを、起業した井原正博さんが詳細に振り返ります。 ヤフーやクックパッドでの開発を経て、ビットジャーニーで代表を務める井原正博(いはら・まさひろ/@ihara2525)です。プライベートで超長距離のランを楽しむかたわら、情報共有ツール「Kibela」の開発・運営を手がけています。 Kibela - 個人の発信を組織の力にする情報共有ツール 「Kibela」は僕自身が2015年に起業して立ち上げたサービスですが、この記事では、僕がサービスをいかに開発したか、その方法からリリースまでの過程を振り返りつつ、サービスの現在の状況までお伝えします。 「自分でもサ
エンジニアHub > 記事一覧 > 「Go言語らしさ」とは何か? Simplicityの哲学を理解し、Go Wayに沿った開発を進めることの良さ 「Go言語らしさ」とは何か? Simplicityの哲学を理解し、Go Wayに沿った開発を進めることの良さ プログラミング言語には作者の設計思想が強く現れますが、Go言語もまた後発であることを生かし、しっかりとした思想に基づいて開発されています。公式のドキュメント等で語られているSimplicityの哲学を理解し、Go言語らしさ、Go Wayに従って開発する良さについて、はてなチーフエンジニアの松木雅幸(Songmu)さんが解説します。 id:Songmuと申します。はてな東京オフィスでチーフエンジニアを務め、Mackerelというサーバー監視のSaaS開発においてプロダクトマネージャーを担当しています。 筆者が勤めている株式会社はてなでは、2
COBOLからPepperまで、35歳定年説を超えてコードを書き続ける20年選手の「こだわらないキャリアパス」 プログラマ・エンジニアとして働いていたら一度は耳にする「35歳定年説」。そんな中、自身でコードを書き一線で活躍している先輩エンジニアに、長年エンジニアの仕事を続けてきて考えていること、心がけなどを語ってもらいました。 プログラマ・エンジニアとして働いていたら一度は耳にするであろう「35歳定年説」。体力面やキャリアを考えたとき、シフトチェンジをせざるを得ないという声も聞く。そんな中、自身でコードを書き一線で活躍している先輩エンジニアも少なくない。今回は40代の先輩エンジニアに、長年エンジニアの仕事を続けてきて考えていることや心がけなどを挙げていただきました。 はじめまして、榊原です。3年前にぐるなびに入社以来、主に新技術を使った開発を担当しています。アプリ開発や人工知能研究、最新技
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く