SlideShare a Scribd company logo
Submit Search
Upload
10年以上Java屋してたおっさんが 今年からフロントエンジニアやっている話
Report
Share
takehiko yoshida
freelance engineer
Follow
•
178 likes
•
50,951 views
1
of
50
10年以上Java屋してたおっさんが 今年からフロントエンジニアやっている話
•
178 likes
•
50,951 views
Report
Share
Download Now
Download to read offline
Engineering
フロントエンドエンジニアで活動しようと思った経緯 半年程度の実務経験を経て感じたこととか
Read more
takehiko yoshida
freelance engineer
Follow
Recommended
我が家のフロントエンド開発事情 by
我が家のフロントエンド開発事情
Naoki Yamada
3.9K views
•
49 slides
エンジニアからデザイナーに贈るプロトタイピングのすすめ - 春のフロントエンド祭り 2015 by
エンジニアからデザイナーに贈るプロトタイピングのすすめ - 春のフロントエンド祭り 2015
Naoki Yamada
1.6K views
•
52 slides
中の下のエンジニアを脱出するための仕事術 by
中の下のエンジニアを脱出するための仕事術
Noriaki Kadota
46.8K views
•
15 slides
How to develop a huge Single Page Application by
How to develop a huge Single Page Application
Naoki Yamada
3.2K views
•
65 slides
最近誰かに「やったほうがいいよ」と伝えた7のこと by
最近誰かに「やったほうがいいよ」と伝えた7のこと
Noriaki Kadota
40.1K views
•
19 slides
ベストエンジニアな働き方 by
ベストエンジニアな働き方
Keiichi Endo
2.1K views
•
38 slides
More Related Content
What's hot
「速」を落とさないコードレビュー by
「速」を落とさないコードレビュー
Takafumi ONAKA
55.5K views
•
62 slides
スタイルガイドを活用した運用に強いCMSサイト制作 by
スタイルガイドを活用した運用に強いCMSサイト制作
Keisuke Imura
4.3K views
•
84 slides
three.jsによる一歩進めたグラフィカルな表現 by
three.jsによる一歩進めたグラフィカルな表現
Kei Yagi
3.8K views
•
30 slides
これからはフリーランスのエンジニアがもっと増える by
これからはフリーランスのエンジニアがもっと増える
Atsushi Harada
4.6K views
•
22 slides
最速で価値を提供する by
最速で価値を提供する
LIFULL Co., Ltd.
1.4K views
•
40 slides
「◯◯さんだから仕事をお願いしたい」と頼まれるエンジニアになろう by
「◯◯さんだから仕事をお願いしたい」と頼まれるエンジニアになろう
Atsushi Harada
3.8K views
•
36 slides
What's hot
(20)
「速」を落とさないコードレビュー by Takafumi ONAKA
「速」を落とさないコードレビュー
Takafumi ONAKA
•
55.5K views
スタイルガイドを活用した運用に強いCMSサイト制作 by Keisuke Imura
スタイルガイドを活用した運用に強いCMSサイト制作
Keisuke Imura
•
4.3K views
three.jsによる一歩進めたグラフィカルな表現 by Kei Yagi
three.jsによる一歩進めたグラフィカルな表現
Kei Yagi
•
3.8K views
これからはフリーランスのエンジニアがもっと増える by Atsushi Harada
これからはフリーランスのエンジニアがもっと増える
Atsushi Harada
•
4.6K views
最速で価値を提供する by LIFULL Co., Ltd.
最速で価値を提供する
LIFULL Co., Ltd.
•
1.4K views
「◯◯さんだから仕事をお願いしたい」と頼まれるエンジニアになろう by Atsushi Harada
「◯◯さんだから仕事をお願いしたい」と頼まれるエンジニアになろう
Atsushi Harada
•
3.8K views
エンジニア採用ヤバイ! PHPカンファレンス関西 懇親会LT by Tomoyuki Sugita
エンジニア採用ヤバイ! PHPカンファレンス関西 懇親会LT
Tomoyuki Sugita
•
8.7K views
20150531 phpcon kansai by kumamidori
20150531 phpcon kansai
kumamidori
•
7.6K views
Yii Framework 2.0 いま求められるRAD標準とは #phpkansai by Hisateru Tanaka
Yii Framework 2.0 いま求められるRAD標準とは #phpkansai
Hisateru Tanaka
•
5.7K views
デザイナーにもできる再構築の高速化/負荷分散 by Hajime Fujimoto
デザイナーにもできる再構築の高速化/負荷分散
Hajime Fujimoto
•
4.5K views
サーバサイドエンジニアから見た MT構築のレガシーなノウハウ (入門編) by Osamu Nagatani
サーバサイドエンジニアから見た MT構築のレガシーなノウハウ (入門編)
Osamu Nagatani
•
5.4K views
[社内勉強会]SPAのすすめ by hirooooo
[社内勉強会]SPAのすすめ
hirooooo
•
877 views
“MT on AWS”でWebサイト構築! 作り手が気をつけておきたいポイント by Monster Dive, Inc.
“MT on AWS”でWebサイト構築! 作り手が気をつけておきたいポイント
Monster Dive, Inc.
•
2.6K views
ぼくたちのじゅたくかいはつ by Atsushi Harada
ぼくたちのじゅたくかいはつ
Atsushi Harada
•
7.1K views
ドメイン駆動設計と サーバサイドと私 by Noriaki Kadota
ドメイン駆動設計と サーバサイドと私
Noriaki Kadota
•
3.2K views
ぼくたちのじゅたくかいはつ(と品質の話) by Atsushi Harada
ぼくたちのじゅたくかいはつ(と品質の話)
Atsushi Harada
•
1.9K views
「フレームワークを使っていれば 脆弱性は出ない」って本当? by thatblue
「フレームワークを使っていれば 脆弱性は出ない」って本当?
thatblue
•
236 views
Cssアニメーションとその制御 by Muyuu Fujita
Cssアニメーションとその制御
Muyuu Fujita
•
3.1K views
Hatena::Letの式年遷宮 by Takafumi ONAKA
Hatena::Letの式年遷宮
Takafumi ONAKA
•
6.2K views
社内SEはVBAを投げ捨ててPHPの夢を見るか? by naoto teshima
社内SEはVBAを投げ捨ててPHPの夢を見るか?
naoto teshima
•
648 views
Viewers also liked
Node canvas by
Node canvas
KinkumaDesign
2.9K views
•
12 slides
SIerからWebエンジニアへの失敗しない転職方法 by
SIerからWebエンジニアへの失敗しない転職方法
Yusuke Kon
27.1K views
•
61 slides
凡庸なSEが、大規模SIerの集団でできること - DevLOVE甲子園 2013 by
凡庸なSEが、大規模SIerの集団でできること - DevLOVE甲子園 2013
Minoru Yokomichi
13.8K views
•
35 slides
35歳無名のシステムエンジニアが1年半でフロントエンジニアになるために行った3つの成長戦略 by
35歳無名のシステムエンジニアが1年半でフロントエンジニアになるために行った3つの成長戦略
Mitsuru Ogawa
14.8K views
•
56 slides
RubyエンジニアがPythonをdisるためにPythonを勉強してみた by
RubyエンジニアがPythonをdisるためにPythonを勉強してみた
Yusuke Kon
27.8K views
•
29 slides
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 − by
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
Kohei Asai
16.3K views
•
32 slides
Viewers also liked
(6)
Node canvas by KinkumaDesign
Node canvas
KinkumaDesign
•
2.9K views
SIerからWebエンジニアへの失敗しない転職方法 by Yusuke Kon
SIerからWebエンジニアへの失敗しない転職方法
Yusuke Kon
•
27.1K views
凡庸なSEが、大規模SIerの集団でできること - DevLOVE甲子園 2013 by Minoru Yokomichi
凡庸なSEが、大規模SIerの集団でできること - DevLOVE甲子園 2013
Minoru Yokomichi
•
13.8K views
35歳無名のシステムエンジニアが1年半でフロントエンジニアになるために行った3つの成長戦略 by Mitsuru Ogawa
35歳無名のシステムエンジニアが1年半でフロントエンジニアになるために行った3つの成長戦略
Mitsuru Ogawa
•
14.8K views
RubyエンジニアがPythonをdisるためにPythonを勉強してみた by Yusuke Kon
RubyエンジニアがPythonをdisるためにPythonを勉強してみた
Yusuke Kon
•
27.8K views
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 − by Kohei Asai
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
Kohei Asai
•
16.3K views
Similar to 10年以上Java屋してたおっさんが 今年からフロントエンジニアやっている話
PHPerがJava屋になるために乗り越えたこと by
PHPerがJava屋になるために乗り越えたこと
Kazuhiro Serizawa
8.5K views
•
32 slides
師弟登壇2015 GMOペパボ @orzup by
師弟登壇2015 GMOペパボ @orzup
Asami Nakano
11.9K views
•
76 slides
Angularで新サービス作って学んだこととか by
Angularで新サービス作って学んだこととか
Katsumi Honda
2.1K views
•
42 slides
Spring Boot Introduction by
Spring Boot Introduction
chibochibo
2.3K views
•
28 slides
爆速フレームワークでREST APIを作った話 by
爆速フレームワークでREST APIを作った話
Shohei Tai
7.4K views
•
41 slides
from_beginner_to_engineer by
from_beginner_to_engineer
Yuka Tokuyama
2.1K views
•
22 slides
Similar to 10年以上Java屋してたおっさんが 今年からフロントエンジニアやっている話
(20)
PHPerがJava屋になるために乗り越えたこと by Kazuhiro Serizawa
PHPerがJava屋になるために乗り越えたこと
Kazuhiro Serizawa
•
8.5K views
師弟登壇2015 GMOペパボ @orzup by Asami Nakano
師弟登壇2015 GMOペパボ @orzup
Asami Nakano
•
11.9K views
Angularで新サービス作って学んだこととか by Katsumi Honda
Angularで新サービス作って学んだこととか
Katsumi Honda
•
2.1K views
Spring Boot Introduction by chibochibo
Spring Boot Introduction
chibochibo
•
2.3K views
爆速フレームワークでREST APIを作った話 by Shohei Tai
爆速フレームワークでREST APIを作った話
Shohei Tai
•
7.4K views
from_beginner_to_engineer by Yuka Tokuyama
from_beginner_to_engineer
Yuka Tokuyama
•
2.1K views
インフラエンジニアが プログラミングで業務改善していく話 by Keisuke Matsuda
インフラエンジニアが プログラミングで業務改善していく話
Keisuke Matsuda
•
343 views
【Dev love2014】120%文系の私がエンジニアと働く理由_限界集落のジジババとエンジニアとの共通点 by Yuki Nishikawa
【Dev love2014】120%文系の私がエンジニアと働く理由_限界集落のジジババとエンジニアとの共通点
Yuki Nishikawa
•
968 views
歴史あるWebサービスに携わって2年半の間に起きた事やった事 by Masataka Kono
歴史あるWebサービスに携わって2年半の間に起きた事やった事
Masataka Kono
•
5.8K views
フリーランスエンジニアを半年間やってみた by Ohira Yukito
フリーランスエンジニアを半年間やってみた
Ohira Yukito
•
3.1K views
○○したら受託開発が180°変わった(10分版) by Atsushi Harada
○○したら受託開発が180°変わった(10分版)
Atsushi Harada
•
32.6K views
目黒スタートアップ勉強会 by gaooh
目黒スタートアップ勉強会
gaooh
•
949 views
Spring Boot + Doma + AngularJSで作るERP #jjug_ccc #ccc_r12 by 学 松崎
Spring Boot + Doma + AngularJSで作るERP #jjug_ccc #ccc_r12
学 松崎
•
19K views
高卒でIT企業に就職してみて by tomomi yuzuriha
高卒でIT企業に就職してみて
tomomi yuzuriha
•
1.8K views
Java web application testing by Tokuhiro Matsuno
Java web application testing
Tokuhiro Matsuno
•
7.7K views
スクールと現場のハザマ 2018 登壇資料 塩井 美咲さん by DIVE INTO CODE Corp.
スクールと現場のハザマ 2018 登壇資料 塩井 美咲さん
DIVE INTO CODE Corp.
•
2.1K views
Java5 by ImayoshiYusuke
Java5
ImayoshiYusuke
•
10 views
Webサイトのようには作れない!Webアプリ設計の考え方 by girigiribauer
Webサイトのようには作れない!Webアプリ設計の考え方
girigiribauer
•
9.6K views
C#とaop by Hiroshi Maekawa
C#とaop
Hiroshi Maekawa
•
14.9K views
[Java女子部LT]VB屋さんからJava屋さんにスキルチェンジした話 by Juri Minamiyama
[Java女子部LT]VB屋さんからJava屋さんにスキルチェンジした話
Juri Minamiyama
•
506 views
10年以上Java屋してたおっさんが 今年からフロントエンジニアやっている話
1.
10年以上Java屋してたおっさんが 今年からフロントエンジニアやっている話
2.
よしだたけひこ • フリーランスエンジニア歴10年ほど
• 去年までJavaエンジニアとして10年以上活動 • レベルは下の上〜中の下 • 今年からフロントエンドエンドエンジニア
3.
今日話すこと • フロントエンドエンジニアで活動しようと思った経緯
• 半年程度の実務経験を経て感じたこととか
4.
注意事項 • フロントエンドエンジニアとしての実務経験は半
年ちょいと薄っぺらい • そこらへんを差し引いて暖かい目で見てくれると ありがたいです
5.
去年前半までのよしだ • swing、struts、seasar、組込みjava、android..
. • 業務系システム多め
6.
去年前半までのよしだ フロントエンド周りのレベル感 •
HTML/CSS、Javascriptはちゃんと学んだことな し • 見よう見まねの片手間でなんとか乗り切ってきて これた感じ • jQueryにかなり救われた
7.
きっかけ • 去年サーバーサイドエンジニアとしてとあるプロ
ジェクトに参画 • 一般向けのWebサービスで比較的なリッチなUIと Javascriptを使ったインタラクションが多い
8.
きっかけ • フロントエンドデザインは外部のWebデザイン系
の会社に委託 • インタラクションのJavascriptはある程度デザイン 会社が実装
9.
きっかけ • デザイン会社から上がってきたフロントエンドコ
ードをサーバーサイドエンジニアがサーバーサイ ドで動くように組み込む • といった開発フロー。中を覗いてみると。。
10.
きっかけ かつて経験したことないくらい のアレな感じ
11.
きっかけ • まともなルールが殆どないため一貫性が欠如
• なんだか良くわからないが一応動いている
12.
きっかけ 自衛のために真面目にJavascriptを勉強し始める
13.
きっかけ モダンなフロントエンド開発の世界観を知る •
フロントエンド開発における定型的な作業の自動 化→ タスクランナー(Grunt、Gulp) • 依存関係管理→ Bower • より良いCSS → CSSプリプロセッサ(sass, LESS, Stylus)
14.
きっかけ モダンなフロントエンド開発の世界観 •
よりよいJavascript → AltJS(CoffeeScript、 TypeScript) • クライアントサイトMVC → (Backbone.js、 Angular.js)
15.
きっかけ モダンなフロントエンド開発の世界観 •
従来型のWebアプリと比べ、よりリッチなユーザ ー体験→ SPA(Single Page Application) • CSS設計→ OOCSS、SMACSS、BEM
16.
きっかけ • 調べている内に問題解決の方法やアイデアに感動
• やってみたいというワクワク感とWebエンジニア として取り残されているという焦りが日々高まっ ていった • 仕事に区切りをつけてフロントエンドエンジニア 職で仕事を探すことに
17.
仕事を探す モダンなフロントエンド開発に取り組んでいたり、モ チベーションの高そうな会社の案件を探した
18.
仕事を探す • 希望条件に合致していた会社にエントリーしよう
と思ったが、ポートフォリオの提出が前提条件 • 2週間くらいで休暇も兼ねてポートフォリオをサク ッと作ってみようと考えた
19.
ポートフォリオ作り 自分のやりたいことをアピールしたものを作ろうと考 えた
自分のやりたいことは • モダンなフロントエンドWeb開発 なので、grunt、bower、sass、compassで、html5、 css3、Javascriptを適度に使ったレスポンシブレイアウ トなWebページを作ることにした
20.
ポートフォリオ作り 気をつけたこと •
ウィジェット(ダイアログとかの画面部品)には jQueryプラグインなどのライブラリをなるべく使 わない • 意図、コンセプト、使用したアーキテクチャなど を説明する
21.
ポートフォリオ作り • 簡単なデザインラフを考えてコーディングしてみ
る • ラフ通りにマークアップできない。。 • マークアップ力弱いことや他に色々気になること が頻発
22.
ポートフォリオ作り 2週間じゃたりない。 仕切り直そう。。。
23.
勉強したこと • 書籍でHTML、CSSの基礎的なことを学ぶ
• ネットでベストプラクティス的な情報を漁る •YEOMANのgenerator-webappとかで作ったscafold で使われてるものを漁って見るのがいいと思う • HTML5Boilerplate、normlize.css、Eric Meyer's CSS resetとか
24.
勉強したこと HTML •
HTML5で新たに増えたタグでより意味的にマーク アップできることを知った • SEO的に有利うんぬんよりHTMLの可読性の向上 に寄与していることが重要かと思った
25.
勉強したこと CSS •
最初はオレオレルールで書いていたが迷いが頻発 • SMACSS(和訳されてるよ)買って読んですっき り • 結果SMACSS + BEMの命名規約をベースにして 書き直したり
26.
勉強したこと Grunt •
プラグインを漁る → フロントエンド開発で発生する面倒なことや問 題を知ることできる
27.
ポートフォリオ完成 • 結果的に2ヶ月ほどダラダラ勉強しながらポートフ
ォリを作った • 今見るとしょっぱい出来
28.
ポートフォリオ完成 • Javaで仕事探してたときにはほとんどなかったけ
ど、ポートフォリオあれば見せてっていう会社結 構ある • フロントエンドエンジニア職探そうと考えてる人 はあらかじめ作っといたほうがいいと思う
29.
改めて仕事を探す AngularJSで新規開発案件にエントリー 面談の場でポートフォリオをプレゼン
先方もモダンなフロントエンドWeb開発に対してモチ ベーションが高かった
30.
改めて仕事を探す 晴れて契約。 AngularJSを使ったSPA開発。サーバーサイドはAPIを
提供するのみ マークアップの規約作りやGruntを使った自動化周り も任せて貰えて、大変だったがいい経験に 今年の5月一杯までお世話になった
31.
次の仕事探し。苦戦。。 • それなりの自信をつけて次の仕事を探してはみた
のものの苦戦。。 • 5月前半から次のフロントエンドエンジニア案件 を探したが決まったのは6月前半 • 大体は面談までは行くがミスマッチが多かった
32.
次の仕事探し。苦戦。。 • 規模的に大きくない会社でエンハンス系の案件だ
とフロントエンドタスクだけではなく、サーバー サイドタスクもこなして欲しいという要望。理解 はできる。 • サーバーサイド絶対やりたくないってわけじゃな いのでフロントエンドが6、サーバーサイド4ぐ らいの割合ならというスタンス
33.
次の仕事探し。苦戦。。 しかし、、Webサービス系企業はPHP、Rubyが多い Java屋な俺にはミスマッチ
選択肢広げるためにPHP勉強しだす
34.
次の仕事探し。苦戦。。 • 次が駄目ならまた1ヶ月くらい休暇とってPHPやろ
うと思ってたが、、 • 最後にしようと思ってエントリーした純粋なフロ ントエンド案件取れた •PHPの勉強やめた。(一旦) • 現在に至る
35.
思ったこと ですが、うまくまとまっていませんのでさらっと。。
36.
思ったこと • フロントエンド(Javascript、HTML/CSS)は壊れ
やすい • だからこそ規約やテストやレビューが重要 • フロントエンドが中〜大規模になる場合ノープラ ンは危険
37.
思ったこと クロスブラウザ対策大変 •
IE対応、Androidの標準ブラウザ対応とか • OSSとか使う場合はレガシーブラウザで動くかどうか事前確認大事 • JSのAPI、HTML5の要素、CSSプロパティはCan I use..で確認 設計が大切 • 機能や画面を構成するものをどう分類するか • HTML、CSS、Javascript、三位一体で考えたほうがよい • ガイドラインの作成
38.
思ったこと • Javascript
• 敷居は低いが難しい言語だということを実感 • 敷居が低いというのがたちが悪い • Javascriptを書ける人はたくさんいるが、書ける人 の中での理解レベルのギャップが激しい言語だと 思った
39.
思ったこと • Javascript
• 非同期処理がネストしがち。コールバック関数た らい回ししがち。 • → jQuery Deferredとかq.jsとかでスマートに書け る。重要。
40.
思ったこと • Javascript
• とりあえず入れるでいいんじゃ?というOSSライ ブラリ • underscorejs(lodash.js)、momentjs • ある程度のコーディング規約はJSHintに任せられ る
41.
思ったこと • クライアントサイドMVC
• Backbone.js入れても品質上がらない • あれはレールを用意してくれるだけで組み立てて走らせるのは 自分 • 素のBackboneで設計するのはそれ相応の設計能力が必要 • Marionetteとか使うと良いと思う(使ったことないです) • ただし、レール引いても乗らない奴もいるのでレビュー重要
42.
思ったこと •HTML/CSS •
最初にCSS設計方法の方針を固めるべき •OOCSS、SMACSS、BEMなど参考に • サイズの単位、色指定の方法、ベーススタイルどう するかなど規約化する • とにかく最初の決めが重要
43.
思ったこと HTML/CSS •SASS便利
• ただし、出力結果イメージできないで使うとCSS肥大化を招くので注意 する • ネストはほどほどに • BEM的な命名規則採用しているならネスト使わずフラットに書くべきだ と思う • mixin、include、extend、placeholder selctorを理解して使う。
44.
思ったこと • 開発の助けとなるツール
• デバッグはChrome CanaryのDevToolsが便利。こ れをうまく使いこなせるかで生産性に結構差がで ると思うレベル • デバッグプロキシも便利。macだとcharles、 widowsだとfiddler
45.
思ったこと • ブラウザの気持ちを考えるのは難しい
• なにが正解かはコンテキストによって異なってくる • サービスの特性、画面の特性、サーバーサイドへの 負荷、セキュリティへの考慮などなど • そこらへん踏まえてバランスいい判断できるひとが 優秀なフロントエンドエンジニアなのかなと
46.
今後 Webサービス開発でこういう流れがある 1.
最初にSPAでスマホ用Webアプリ作る 2. 次にコンテンツはWebアプリを流用したガワネイ ティヴ(ハイブリッドアプリ)作る 3. サービスが軌道に乗ってきた 4. ガワネイティヴをフルネイティヴ化する
47.
今後 つまりHTML/CSS、Javascriptを使ったフロントエン ドはフルネイティヴのつなぎ的な位置付け
48.
今後 • Android、iOSネイティヴもフロントエンド
• やってみたい。知らないことを学ぶのは楽しい • ただ、今年はHTML/CSS、Javascriptに集中する
49.
最後に 混沌としている世界ほど面白いと感じれる 人はフロントエンドエンジニアに向いてい
ると思うので是非。 飽きないです。
50.
最後に ご清聴ありがとうございました 。
Editor's Notes
>つまりHTML/CSS、Javascriptを使ったフロントエンドはフルネイティヴのつなぎ的な位置付け ということになって先細りそうな