ユーザー名非公開
回答7件
向き不向きとか不安にお応えできる回答なのかわかりませんが、日ごろ目にするモノやサービスの裏側(の処理)を推測したり考えたりすることの癖を付けると良いんじゃないでしょうか。 鉄道駅の電光掲示板だとか、信号機だとか、あるいはもっと身近にスマホのニュースアプリの裏側でおこなわれている通信内容とかスクリーンセーバーのレンダリングロジックだとか。ソフトウェアは身のまわりにあふれていると思います。 一概にはいえませんが、デキるエンジニアはつくることと同じくらい考えることが好きで、処理の流れやロジックを想像したり考えたりすることが好きなんですよね。意識してやっているというより、習慣とか習性に近いと思います。まずはちょっと意識して、そういう行動/思考パターンをつくってみてはどうでしょうか。
私も新卒未経験でエンジニアで入社し、今二年目です。 処理やロジックについては基本的な処理の組み合わせの連続だと思って、時間がかかっても、可読性が低いコードであってもまずは自分が想定した通りの動作になるまで考えます。 あとは、普段自分が使っているアプリやサービスがどう作られているのか?ってことを使いながら考えるように最近なりました。 私も二年目で実力の無さを痛感する毎日です。。。 お互い頑張りましょう!
処理の流れを考えるなどは他の皆さんがおっしゃる通りだと思うので別の角度から 私が大事だと思っているのは聞くことを恐れない事だと思います。 分からない事は当然ですが、自分が書いたコードをレビューを頼んでみたり、こういう処理を考えているんですけどどう思いますか?など積極的に意見交換するとかとか コードや技術についてコミュニケーションをとる事は何より自分の中に定着します。 またコミュニケーションをこちらから取りに行く事を続ける事で、逆に相手からも意見を求められたり予想外の知識を得るきっかけがあったりと得られるものは多いです。 最初の数年は自分の中に閉じこもらない事が自分の技術を飛躍的に上げてくれたというのが私の実感です。
処理の流れやロジックを考えるには、お手軽な範囲だと料理ですね。 1鍋で出来るような簡単なものではなくて手の込んだもの、もしくは複数。出来れば一汁三菜。 こちらでアレを切りつつ、あちらでソレを茹でて…と。 最終的にかかった時間や味でフィードバックがすぐあるので、モチベーションの維持にも良いです。健康にも良いし。 フローチャートで料理を示した本 [ http://www.amazon.co.jp/dp/4760602046 ] なども出ていますので、そちらもご参考に。 という半冗談はさておき。 chibikuma さんも書かれていますが、日常のあらゆる事について、処理の流れを意識していると、そのうち身についてきます。 単に漫然とプログラムを書くだけではどうしても時間がかかり、途中で嫌になったりしますしね。
処理は先輩のコードを見てみると勉強になりますよ。ダメコードがあっても口には出さない方がいいですけど。 あとは身の回りのことを何でもフローに落とし込んでみると、シンプルなロジックが作れるようになりますよ。
githubを毎日覗くのが良いかと思います。 流行りの技術やソースコードの書き方など学べることは多いです。 また、技術はある程度身につけたからゴールということもないので、 常に学ぶ姿勢をやめないことが良いと思います。
サービスを作ってみるのはどうでしょうか。 例えば、ブログとか そのサービスがどうすれば便利になるのか考え、実装していくと力がついて行きます。