Scalaを活かせる仕事
- 詳細はこちら
単価 650,000 ~ 1,000,000 円 /月額
最寄駅 東京メトロ 半蔵門駅スキル 職種 特徴 契約形態 業務委託、正社員、派遣、契約社員、紹介予定派遣作業内容
当社のプロダクトや直請けプロジェクトに一気通貫で携わるバックエンドエンジニアとしてご活躍いただきます。 ■職務内容 ・当社サービスを構成するレコメンド・検索・広告配信エンジンや、当社事業におけるシステムの新機能開発・継続的なパフォーマンス改善 ・効率益なデプロイや情報共有環境の整備などの開発効率向上施策 ・負荷試験、セキュリティー対策 ・データベース設計 ■当社サービスについて...
- 詳細はこちら
単価 ~ 700,000 円 /月額
最寄駅 フルリモートスキル 職種 特徴 契約形態 業務委託作業内容
・新機能の開発 ・機能改善要望についての開発 ・障害発生時の対応
- 詳細はこちら
単価 ~ 900,000 円 /月額
最寄駅 フルリモートスキル 職種 特徴 契約形態 業務委託作業内容
スクラム体制での開発で、設計~開発まで行っていただきます。 【人物像】 ・常に変化する複雑な環境の中で、優先順位を付けることができる方 ・社内のリソースや社外の利害関係者との調整を苦なくできる方 ・チーム一丸となり、働ける方 ・全体の成長のために自分にできることを惜しまず提言、実行できる方
- 詳細はこちら
単価 ~ 750,000 円 /月額
最寄駅 天王洲アイルスキル 職種 特徴 契約形態 業務委託作業内容
【概要】 既存統計システムの追加開発や運用業務 【主に行う業務】 稼働中既存サービスのうごき統計システムの追加開発作業になります。 【求める人物像】 ・勤怠/健康状態に問題がなく、中長期的に業務に携わっていける方 ・コミュニケーションを積極的にとれる方 ・ハウスルールなど遵守しつつ業務を遂行できる真面目で責任感のある方 【作業工程】 製造~運用
- 詳細はこちら
単価 ~ 900,000 円 /月額
最寄駅 浅草橋駅スキル 職種 特徴 契約形態 業務委託作業内容
・オペレーションチームや、顧客、サプライパートナーの利用するシステムのバックエンドシステムの設計、実装 ・ミドルウェア、フレームワーク等の技術選定・検証 ・バックエンドシステム全体のアーキテクチャ設計 ・各種定性・定量リサーチ(ユーザー調査・ログ分析・問い合わせ分析など)に基づくシステムの改善 ・アルゴリズム、フロントエンドとのインターフェース設計 【職務内容】 ・各開発チームでの...
- 詳細はこちら
単価 ~ 900,000 円 /月額
最寄駅 浅草橋駅スキル 職種 特徴 契約形態 業務委託作業内容
・オペレーションチームや、顧客、サプライパートナーの利用するシステムのバックエンドシステムの設計、実装 ・ミドルウェア、フレームワーク等の技術選定・検証 ・バックエンドシステム全体のアーキテクチャ設計 ・各種定性・定量リサーチ(ユーザー調査・ログ分析・問い合わせ分析など)に基づくシステムの改善 ・アルゴリズム、フロントエンドとのインターフェース設計 ・各開発チームでのサーバーサイドア...
- 詳細はこちら
単価 450,000 ~ 550,000 円 /月額
最寄駅 フルリモートスキル 職種 特徴 契約形態 業務委託作業内容
・AWS上で稼働するデータ分析システムの共通基盤開発(API開発) ・クラウドの各種サービスを利用した構成検討/詳細仕様検討/製造/テストの各工程
- 詳細はこちら
単価 700,000 ~ 800,000 円 /月額
最寄駅 渋谷スキル 職種 契約形態 業務委託作業内容
某セミナープラットフォームのフロントエンド開発
- 詳細はこちら
単価 750,000 ~ 900,000 円 /月額
最寄駅 フルリモート(出社時は渋谷)スキル 職種 特徴 契約形態 業務委託作業内容
案件名:女性向けエンタメアプリ開発案件 単価:スキル見合い(MAX90万円程度) 上振れご相談ください! 場所:フルリモート(出社時は渋谷) 期間:即or1月 精算:140-180h 面談:1回(Web) <必須スキル> ・SwiftでのiOSアプリ開発経験3年以上 <尚可スキル> ・・RxSwiftでの開発経験 ・コンシューマ向けのアプリ開発経験 ...
- 詳細はこちら
単価 ~ 750,000 円 /月額
最寄駅 フルリモートスキル 職種 契約形態 業務委託作業内容
医療系診断システム開発運用支援を行って頂きます。 ◆作業内容: ・API/WEBアプリケーションの設計及び開発 ・プロダクトのアーキテクチャ設計 ・WEBのインフラ開発(APIserver・アイデンティティ・ペイメント等)
もっと見る
Scalaとは?
Scalaの案件・業界分布について
Scalaは、スイス・ローザンヌにあるスイス連邦工科大学の教授でJavaの開発を行っていたマーティン・オーダースキー氏によって開発されたプログラミング言語。JAVAのライブラリが利用可能で、環境を構築しやすいのが特徴です。
Scalaについて
Scalaでは、ビッグプロジェクトを進める際にミスや手間を減らし、共同作業の利便性を高めるための考え方として知られる「オブジェクト指向」の言語、問題を関数の組み合わせで記述するプログラミング方法である「関数型プログラミング」の言語の両方を扱うことができます。
エラーを起こしにくいだけでなく、エラーを見つけやすいというメリットもあり、海外ではTwitterやLinkedin、国内でもChatworkやビズリーチなどがScalaを使っています。
2017年にビズリーチが行った調査によると、国内のプログラミング言語別平均年収ランキングで、「Scala」は626万円で堂々の1位。株式会社ドワンゴ、サイバーエージェント、SmartNewsなどの有名企業をはじめ、幅広い業界で、広告システムの開発、データ分析、WEBサービスのサーバサイド開発など幅広い案件があります。
難易度が高く、習得するまでに時間がかかりますが、幅広い使用用途と高い有用性で、需要が増え続けている「Scala」。身につけると、かなり強いスキルとなります。
Scalaのサンプルコード
(例)変数
「val」=イミュータブル(変更不可)、「var」=ミュータブル(変更可)の2種類。「val」は後から変更できない変数で、副作用が起きません。
// valはイミュータブル
scala> val msg = "Hello, world!"
msg: String = Hello, world!
scala> msg = "Goodbye cruel world!"
<console>:8: error: reassignment to val
msg = "Goodbye cruel world!"
// varはミュータブル
scala> var greeting = "Hello, world!
greeting: String = Hello, world!
scala> greeting = "Leave me alone, world!"
greeting: String = Hello, world!
(例)算術演算子
Scalaは、基本型を操作する演算子が豊富にあります。下記は算術演算子。
scala> 1.2 + 2.3
res: Double = 3.5
scala> 3 - 1
res: Int = 2
scala> 'b' - 'a'
res: Int = 1
scala> 2L * 3L
res: Long = 6
scala> 11 / 4
res: Int = 2
scala> 11 % 4
res: Int = 3
scala> 11.0f / 4.0f
res: Float = 2.75
scala> 11.0 % 4.0
res: Double = 3.0
(例)関数
関数には、「関数定義はdefで始まる」「関数名は慣例的にキャメルケースを使用」「引数の定義は〔変数名〕:〔データ型の形式〕」など、主な定義があります。
// 基本形
def max(x: Int, y: Int): Int = {
if (x > y)
x
else
y
}
// 省略した書き方(関数が一文のみから構成される場合)
def max(x: Int, y: Int) = if (x > y) x else y
(例)引数のない関数
引数のない関数では、括弧を省略することができます。
scala> def three() = 1 + 2
three: ()Int
scala> three()
res2: Int = 3
scala> three
res3: Int = 3
Scalaのフレームワーク
Scalaの代表的なフレームワークとして知られているのは、Javaでも利用できる「Play」、Ruby系のフレームワークに影響された「Scalatra」「Skinny」、Twitterで開発された「Finagle」など。
■Play
「Play」は、JavaとScalaをサポートしているフレームワーク。WEBアプリ、WEBアプリのバックエンドなどで使われ、高速で開発できることがメリットと考えられています。「Play1」のリリース後、徐々に進化をとげ、新しく開発された「Play2」は、主にScala言語によって書き換えられています。
■Scalatra
「Scalatra」は、まつもとゆきひろ氏により開発されたプログラム言語「Ruby」のフレームワーク「Sinatra」に影響を受けた、Scala用のフレームワーク。シンプルでアクセスしやすく、JVWのパワーとScalaの簡潔さを組み合わせ、高性能なwebサイトとAPIを迅速に構築するのに役立ちます。
「Skinny」は、オープンソースのソフトウエア「Ruby on Rails」に大きな影響を受けています。webサーバーで稼働するJavaプログラムであるサーブレットベースのwebアプリ開発を持続的に行うことに適しています。
■Finegle
「Finegle」は、Twitter社が公開した軽量フレームワーク。JVM用の拡張可能なRPCシステムであり、高並行性サーバーの構築に使用されます。複数の通信プロトコルに対して統一されたクライアント及びサーバーAPIを装備しており、高いパフォーマンスと複数の処理を同時に行うことができるよう設計されています。
Java Scriptと同様、さまざまな選択肢があるScalaのフレームワーク。「Play」が一番便利と言われていますが、開発要件によっては機能が過剰になることも。要件に合わせた適切なフレームワーク選びが大切です。
最後に
当サービスでは、Scalaの案件を豊富に取り揃えております。ぜひ魅力的なScalaの案件をお探しください。
また、本記事で紹介したScalaのフレームワークのスキルを必要とする案件も多数ございます。こちらも合わせてお探しください。
■Play案件
https://freelance.modis.co.jp/projects/?skill=461
検索条件を変更
検索条件が選択されていません
該当案件数
204件