Skip to content

Instantly share code, notes, and snippets.

@kakari2
Last active November 3, 2016 12:25
Show Gist options
  • Select an option

  • Save kakari2/9b694af05cdcfe178342 to your computer and use it in GitHub Desktop.

Select an option

Save kakari2/9b694af05cdcfe178342 to your computer and use it in GitHub Desktop.
ソフトウェア開発ガイダンス 2015/01/27

普通のSIer社員がやってること

2015/1/27

#今日話すこと

  1. 自分のいる業界について
  2. ソフトウェア開発について
  • ソフトウェア工学
  • Microsoft界隈の最近の流れ
  1. エンジニアの学習について
  2. チーム開発について

会社紹介

場所 : 新大阪

社員数 : 170名ぐらい

主業務 : SI事業

自己紹介

Twitter : @Syou_n 言語 : PHP, Ruby

ずっと関西在住

自分の業界について

  • 業界分類

  • SI

  • WEB

  • 組み込み

  • モバイルファースト・IoTでWEB/組み込みの技術/人材は流動化

  • SI業界からWEBへの転職

○○エンジニア

  • インフラエンジニア
  • アプリケーションエンジニア
  • フィールドエンジニア
  • オペレーター
  • ヘルプデスク
  • etc...

#課題 異なる業界 異なる組織 異なる開発対象

  • 毎週、毎日仕様変更があるスマホゲーム開発
  • パッケージソフト開発
  • 派生開発の無い、完全オーダーメイドの企業内システム

ソフト開発はコンテキスト依存が大きい

ソフトウェア開発について

ソフトウェア工学 「入門 コンピュータ科学」           アスキー・メディアワークス

BOK BOK(Body Of Knowledge) 先人の知恵 PMBOK SWEBOK ReBOK SQuBOK

最近のMicrosoft界隈の流れ WEB標準への適合 HTML5/CSS3 外部ライブラリの採用 NuGet バイナリからテキストへ ※最近の話ではないけど、大事なことなので

#エンジニアの学習について 知の高速道路 先輩エンジニア 写経 勉強会

 知の高速道路     梅田望夫『ウェブ進化論』

##先輩エンジニア 上司を含め、先輩エンジニアから学ぶことは比較的少ない むしろ若い人が新しい開発手法/ツールを持ってくる もちろん現場のベストプラクティスは先輩が持っている

写経

本に載っているサンプルコードを自分で入力し、動かすことで実習を行う コピペするのではなく、自分で入力する

言語学習サイト

ドットインストール Qiita ミニツク Codecademy

入門書、解説書、逆引き辞典の3冊 ASP.Netであれば ASPの絵本 独習ASP.net ASP.net 逆引き大全 600の極意

勉強会

ここ数年、各地で盛んにエンジニアの勉強会が開催されている

IT勉強会カレンダー https://www.google.com/calendar/embed?src=ZnZpanZvaG05MXVpZnZkOWhyYXRlaGY2NWtAZ3JvdXAuY2FsZW5kYXIuZ29vZ2xlLmNvbQ Azusaar!! http://azusaar.appspot.com/

##勉強会 ###企業セミナーとの違い

勉強会 企業セミナー
自発的 強制的
技術中心 製品中心
主催/参加者それぞれの目的 主催者側の営利目的
不定期 定期的

###企業研修との違い

勉強会 企業研修
自発的 強制的
強制無し 業務命令などの強制力
業務と直接関係ない 業務上必要
社外の人間 社内の人間
技術目的 営利目的
業務外 「業務調整がー」「残業代は」

###勉強会の種類 セミナー カンファレンス ディスカッション ハンズオン 読書会 LT(ライトニングトークス) もくもく会 ハッカソン

必要なもの ぼっちでも折れない心

Q. 喋ることが無いんだけど・・・

A. 自己紹介でもいい

会社の人を巻き込んでみよう

#チーム開発

  1. 達人プログラマー
  2. 開発技法/ツール
  3. 開発プロセス

達人プログラマー

2000年に出版されている 表紙の色が黒いのと緑のがある いくつかのツール/基礎知識が紹介されている これらの知識は現代の開発者には必須

#達人プログラマー 2000年に出版されている いくつかのツール/基礎知識が紹介されている これらの知識は現代の開発者には必須

  • バージョン管理
  • ユニットテスト
  • プロジェクトの自動化

達人プログラマー

バージョン管理 CVS ユニットテスト JUnit プロジェクトの自動化 Ant

バージョン管理システムの無いプロジェクト

単体テストの無いプロジェクトは?

Selenium ブラウザを自動操縦 外側からシステムの動作を確認する

達人プログラマー エディター(黒い表紙の方で言及)

道具はあなたの能力を増幅します。道具が良ければ、より簡単に道具を使いこなせ、より生産的になれるのです。

http://yachibit.hateblo.jp/entry/2014/03/26/032526

#開発技法/ツール ##参考図書

チーム開発実践入門

##開発技法/ツール バージョン管理システム チケット管理 CI(継続的インテグレーション) デプロイの自動化(継続的デリバリー) リグレッションテスト

この辺はSI事業者は周回遅れ気味

「大事なのは、コンピュータに任せられることはできる限りコンピュータに任せること」

「プロダクティブ・プログラマ」 Neal Ford

#テストについて 環境の多様化によって、自動化に脚光が テストにも計画/実装/実行のフェーズがあることがようやく認識されてきた 用語の統一(ISTQB/JSTQB)

コーディング

リーダブルコード

#ご静聴ありがとうございました

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment