ぱいそんなどがくしゅうにっき

Python、機械学習などの自学の計画の公開場

今後のスキル向上に向けての計画(9/21編集)

これからの 指針となるスキルの習得のロードマップを記しておく

 

9/9 【学んだほうがいいと指摘されたこと】

①PGの第二言語(Pythonともう一つ)

→対象未定

AWS ※特にKubernetes

(1)Amazon EKS とは

docs.aws.amazon.com

 

(2)EKSworkshop.com

www.eksworkshop.com

 

③(アジャイル開発における?)プロダクトバックログの出し方を調べておく

→学習教材未定

④次世代の技術的潮流に対する自分の認識と確固たる考え(裏付けを自分で持った上で)

→『ITナビゲータ』『ITロードマップ』を読み考察

⑤テスト関連(自動化など?)

→学習教材未定

 

 

2.自己学習

2-1まとめ

 

[学習内容]

①アプリ領域(重点)

・コーディング力、アルゴリズム

・フロントエンド言語(TypeScript or JavaScript)

フレームワークの知識

・WEBの基本的技術、RDB,DWH、フロント、サーバーサイド間の連携

⇨アプリケーション作成(パブリッククラウドベース、オンプレ)

 

アジャイルに関する知識(重要)

・基本的な知識

・事例(プラクティス)

⇨マインドをアジャイル開発に適応するように書籍の読み込み、考察の実行

 

 

③インフラ領域(最低限)

AWSなどパブリッククラウドの知識

・インフラ構築(AWS本番環境構築)

・ Docker&Kubernetes

⇨ハンズオンをベースに知識つけ、実践

 

 

④最新の技術動向、基本的なCSの知識など

・最新の技術動向

・CSの基本的知識の抜けをなくす

・応用情報レベルの知識の習得

⇨自分の考えや思考のベースに

 

 

⑤その他

・組織運営

・マネジメント

・学ぶべきIT知識など

⇨自分の考えや思考のベースに

 

 

2-22.自己学習詳細

 

⒈現在身に付けているもの[仕掛かり中のものあり]

 

①技術力

 

 (1)コーディング能力(Python paiza AtCoder過去問、AtCoderコンテスト参加)

 

 (2)アルゴリズム力(Python 書籍『Pythonではじめるアルゴリズム入門 伝統的なアルゴリズムで学ぶ定石と計算量』 )

 

 (3)機械学習(Python 書籍『はじめてのディープラーニング』『はじめてのディープラーニング2』)

 

    (4)アプリケーション作成、フレームワーク(書籍『Pythonで始めるWebサービススマホアプリ』をベースに多少加工)

 

 

②知識

 

 (1)アジャイル開発の知識(WEB[IPAアジャイル開発に関しての資料]、書籍『いちばんやさしいアジャイル開発の教本 』『SCRUM BOOT CAMP THE BOOK【増補改訂版】 スクラムチームではじめるアジャイル開発』、『アジャイル開発とスクラム 第2版』)

 

 (2)技術知識、先端技術、今後の技術的展望[※DX,AI,etc...](書籍『カイゼン・ジャーニー たった1人からはじめて、「越境」するチームをつくるまで』、『』)

 

 

③インフラ知識

 

 (1)AWSなどパブリッククラウドの知識(書籍『図解即戦力 Amazon Web Servicesのしくみと技術がこれ1冊でしっかりわかる教科書』)

 

 (2)その他(書籍『』)

 

 

 

 

⒉今後身につけていきたいもの[9月中に決める]

 

①技術力

 

 (1)フロントエンド(Typesprict or Javascript『未定』-入社後使うものに合わせる)

 

 (2)フレームワーク(Vue.jsなど 『未定』-入社後使うものに合わせる)

 

 (3)アジャイル開発の実践(開発手法の実践、書籍[]、業務と業務外での振り返り)

 

 (4)アプリケーションの作成(フレームワーク、DB,DWH,フロント-バックエンド間の知識強化:『Pythonで始めるWebサービススマホアプリ』をベースにパブリッククラウドで作成、『動かして学ぶ! Pythonサーバレスアプリ開発入門 (NEXT ONE)』、『Djangoのツボとコツがゼッタイにわかる本』)

 

 

 

②知識

 (1)CSの基本的知識の抜けをなくす(書籍『イラスト図解式 この一冊で全部わかるWeb技術の基本』)

 

 (2)応用情報レベルの知識(できたら資格の取得 書籍『キタミ式キタミ式イラストIT塾 応用情報技術者』)

 

  (3)さらに先の先端技術、今後の技術的展望[※DX,AI,etc...](書籍『アフターデジタル2』『オードリー・タン デジタルとAIの未来を語る』、『世界最先端8社の大戦略 「デジタル×グリーン×エクイティ」の時代』、『世界のトップデザインスクールが教える デザイン思考の授業』)

 

(4)その他(書籍『プロダクトマネジメントのすべて 事業戦略・IT開発・UXデザイン・マーケティングからチーム・組織運営まで』)

 

 

③インフラ知識

 (1)AWSなどパブリッククラウドの実践(環境構築、分析機能の利用など、書籍『Amazon Web Services 基礎からのネットワーク&サーバー構築 改訂3版』)

 

 (2)インフラ構築(書籍『AWSではじめるインフラ構築入門 安全で堅牢な本番環境のつくり方』、『仕組みと使い方がわかる Docker&Kubernetesのきほんのきほん』)

 

具体的な学習計画

利用している学習教材も含めた、学習計画。

 

まだ必要なものを羅列している状態ではあるが、学習の指針とする。

 

もし読んでくれて、「こうした方がいいよ」などアドバイスしてくれる方がいましたらコメント、もしくはTwitterのアカウントにご連絡頂けると幸いです。

(独学故、皆の勉強記などを漁って作りましたが非効率な部分や至らぬ部分がたくさんあると思うので)

 

 

 

 

【前述】

※現段階では、手を付けてはいるものの、あくまで今後のプログラミング学習のための青写真の段階。

 

全部終わらせるための学習量と時間が膨大になると思われる。

だから学習しながらそれぞれに時間などを算出し、すべてこなすのにかかる時間を概算する。

そのためこの計画には適宜、追記修正を加えていく。

 

 

 

【目指すべきところ】

ビジネス的な知見×専門的なプログラミング能力があり、課題解決能力に長けている人材を目指す。

 

そこに行きつくための学習に関しては以下の4つに大きく分けて考える。

 

 

①基本的なプログラミング能力(言語は主にPython)

②専門的知識が必要なプログラミング能力(専門知識も同時に)

③専門的知識を備えていることを証明する資格

ポートフォリオなど学習結果を示すもの

 

右に△がついているものは、そこまでリソースが避けるかを考えた上で優先順位をつけて対応する。

 

 

 

 

【①基本的なプログラミング能力】

簡単なWebアプリケーションを作成することを目指す。

主に学習するため言語がPythonのため、ライブラリが充実しており、言語として向いているWebスクレイピングの技術も学ぶ。

 

ただし、フロントエンドの言語も決して軽視せず、ある程度は学んでいく。

業務でシステム開発、運営に携わる身としては、サーバーサイドとフロントエンドは切っても切れないと実感しているので疎かにしてはいけない。

 

〇学習教材

 

[Python]

※辞書的にスッキリわかるPython入門(書籍)を利用する

 

・paizaラーニング

・paizaスキルチェックテスト

Pythonではじめるアルゴリズム入門△

現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル(Udemy)

Python でわかる オブジェクト指向 とはなにか?【Python オブジェクト指向 の「なぜ?」を「徹底的に」解説】(Udemy)

PythonによるWebスクレイピング〜入門編〜【業務効率化への第一歩】(Udemy)

PythonによるWebスクレイピング 〜Webアプリケーション編〜(Udemy)

【キカガク流】プログラミング力向上のためのPythonで学ぶアルゴリズム論(前編)(Udemy)

 

Django(Pythonフレームワーク)

【徹底的に解説!】Djangoの基礎をマスターして、3つのアプリを作ろう!

プログラミング初心者でも安心、Python/Django入門講座

【3日でできる】Django 入門 ( Python 3 でウェブアプリを作って AWS EC2 で公開!)

【Python 3 x Django 2.0】作りながら覚えるDjango

 

 

[フロントエンドやその他知識(各々は太字参照)]

ITトレンド、Web技術基礎、HTMLとCSSJavaScriptSQL、Git、AWS

 

・図解これ一枚でわかる最新ITトレンド(ITトレンド)(書籍)

・アフターデジタル(ITトレンド)(書籍)
・paizaラーニング(Web技術基礎)

[HTML/CSS/JavaScript] フロントエンドエンジニアになりたい人の Webプログラミング入門(HTML、CSS、JavaScript基礎)(Udemy)

はじめてのSQL ・データ分析入門 -データベースのデータをビジネスパーソンが現場で活用するためのSQL初心者向コース(SQL)(Udemy)

もう怖くないGit!チーム開発で必要なGitを完全マスター(Git)(Udemy)

AWS:ゼロから実践するAmazon Web Services。手を動かしながらインフラの基礎を習得(AWS)(Udemy)

 

 

 

【②専門的知識が必要なプログラミング能力、知識

ディープラーニング、AI、数学、データサイエンスなど専門的知識やスキルが必要なものはここにカテゴライズする。

 

他者との差別化に必要な要素であり、手をかけていく。

 

プログラミングもあれば、数学的要素の強い統計やデータ分析やビジネス要素が強いものなどもある。

そのため、ある意味一番雑多な部分。 

 

学習の土台として、『はじめてのディープラーニング1、2』でスクラッチ機械学習のプログラミングを学ぶ

 

その上で「足りない部分や+α」をUdemyや書籍で肉付けする。

 

はじめてのディープラーニング(書籍)

はじめてのディープラーニング2(書籍)

・G検定公式テキスト(書籍)

機械学習エンジニアになりたい人のための本(書籍)

・見て試してわかる機械学習アルゴリズムの仕組み 機械学習図鑑(書籍)

・Kaggleスタートブック(書籍)

・最強のデータ分析組織なぜ大阪ガスは成功したのか(書籍)

機械学習100+ページエッセンス(書籍)△

ディープラーニングの数学(書籍)△

Python機械学習プログラミング 達人データサイエンティストによる理論と実践 (書籍)△

機械学習のエッセンス(書籍)△

・データ収集からWebアプリ開発まで 実践で学ぶ機械学習活用ガイド(書籍)△

・60分でわかるAIビジネス最前線(書籍)

・60分でわかる機械学習最前線(書籍)

・60分でわかるディープラーニング最前線(書籍)

超AI入門(書籍)

・統計検定 公式問題集(書籍)

統計学が最強の学問である データ社会を生き抜くための武器と教養(書籍)

・完全独習統計学入門(書籍)

 

みんなのAI講座 ゼロからPythonで学ぶ人工知能と機械学習(Udemy)

アプリケーション開発者のための機械学習実践講座(Udemy)

【キカガク流】人工知能・機械学習 脱ブラックボックス講座 - 初級編 -(Udemy)

【キカガク流】人工知能・機械学習 脱ブラックボックス講座 - 中級編 -(Udemy)

AIのための数学講座:少しづつ丁寧に学ぶ人工知能向けの線形代数/確率・統計/微分(Udemy)

【ゼロから始めるデータ分析】 ビジネスケースで学ぶPythonデータサイエンス入門(Udemy)

【世界で29万人が受講】データサイエンティストを目指すあなたへ〜データサイエンス25時間ブートキャンプ〜(Udemy)

Pythonで機械学習:scikit-learnで学ぶ識別入門(Udemy)

・ 【4日で体験!】 TensorFlow, Keras, Python 3 で学ぶディープラーニング体験講座(Udemy)

【画像判定AIアプリ開発・パート1】TensorFlow・Python・Flaskで作る画像判定AIアプリ開発入門(Udemy)

 

 

 

【③専門的知識を備えていることを証明する資格

資格 is 正義。

 

能力を示せるものなので積極的にとっていく。

ただ資格を取るのはあくまで相手にスキルや知識の担保として見せるものなので、学習の一部としてしか時間は割かない。

基本的な学習に大きな時間を割くのが大前提。

 

・G検定

・E検定△

・統計検定

Python 3 エンジニア認定基礎試験

Python 3 エンジニア認定データ分析試験

 

 

 

【④ポートフォリオなど学習結果を示すもの】

学習の成果と経過を示すものが必要であり、これが一番重要な転職時の「資産」となる

同時に学習時の振り返りなどをアウトプットすることで勉強の効率化を目指す。

 

・このブログ(学習経過)

Qiita

 ・Git(学んだものは全部載せる)

・簡単なWebアプリケーション(教材に乗っ取る)

・paizaラーニング

・Kaggle△

・自作のアプリケーション(難易度は易しいものにする)

 

 

プログラミング学習の目的と目指すところ

【始めに】

裁量もなく技術力のないSlerとして過ごす日々。

そのため転職し、IT業界のもっと専門性のある分野で働きたいと思っている。

 

Slerで技術力のない自分が転職して"ある程度自信を持って誇れるスキル"を身に着けるための一歩とする。

期限:2021年末まで(最大)

 

【なりたい姿】

市場性のある「技術」を持ち、スキルと課題解決能力を持ったエンジニア

 

・近年盛り上がりを見せており積極的に学習している機械学習

・大学時代から興味があり学習していたマーケティング

アジャイル開発

 

具体的には上記のような専門的な知識を用いるエンジニア、若しくは先進的な技術にキャッチアップできるエンジニアを目指す

 

例えば

アジャイル開発エンジニア

・グロースハッカー

・AIエンジニア、機械学習エンジニア

・データサイエンティスト

などを指す

 

【現在足りているもの】

・エンジニアとして働くという意欲

・現在の学習時間

・計画性、分析力

・社会人としての最低限の能力

・学歴、職歴

 

【足りてないもの】

・技術力(コーディング能力)

・専門的知識

・職場(現在の職場では学んだことを活かすのは不可能)

・知識や能力を示す資格

 

こうしたギャップを転職前に埋めきるのは不可能なため、資格やスキル、ポートフォリオなどによって、相手から"将来的な能力"を担保できると思われる技術者へとなれるよう日々学習し邁進する。