Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Low fat backends for mobile guys
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Alexandru Simonescu
February 28, 2016
Programming
110
0
Share
Low fat backends for mobile guys
Low fat backends for mobile guys:
Develop simple backends in Java in minutes
Alexandru Simonescu
February 28, 2016
More Decks by Alexandru Simonescu
See All by Alexandru Simonescu
Software Architecture Journey
alxsimo
4
880
Serverless mobile applications with Firebase v2
alxsimo
4
270
Serverless mobile applications with Firebase
alxsimo
5
320
!Smelly code - The origins
alxsimo
0
100
Cleaner code with Guava v2
alxsimo
5
530
Cleaner code with Guava
alxsimo
3
150
GIT: what else?
alxsimo
1
130
Other Decks in Programming
See All in Programming
Don't Prompt Harder, Structure Better
kitasuke
0
650
ローカルで稼働するAI エージェントを超えて / beyond-local-ai-agents
gawa
2
260
PCOVから学ぶコードカバレッジ #phpcon_odawara
o0h
PRO
0
250
瑠璃の宝石に学ぶ技術の声の聴き方 / 【劇場版】アニメから得た学びを発表会2026 #エンジニアニメ
mazrean
0
220
Kubernetes上でAgentを動かすための最新動向と押さえるべき概念まとめ
sotamaki0421
3
460
PHP で mp3 プレイヤーを実装しよう
m3m0r7
PRO
0
210
PDI: Como Alavancar Sua Carreira e Seu Negócio
marcelgsantos
0
110
CursorとClaudeCodeとCodexとOpenCodeを実際に比較してみた
terisuke
1
320
Coding at the Speed of Thought: The New Era of Symfony Docker
dunglas
0
4.8k
Coding as Prompting Since 2025
ragingwind
0
770
Vibe하게 만드는 Flutter GenUI App With ADK , 박제창, BWAI Incheon 2026
itsmedreamwalker
0
550
Go_College_最終発表資料__外部公開用_.pdf
xe_pc23
0
150
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
97
6.6k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
490
How GitHub (no longer) Works
holman
316
150k
Un-Boring Meetings
codingconduct
0
260
Designing for Timeless Needs
cassininazir
0
190
Building Adaptive Systems
keathley
44
3k
Discover your Explorer Soul
emna__ayadi
2
1.1k
YesSQL, Process and Tooling at Scale
rocio
174
15k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
200
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
200
Accessibility Awareness
sabderemane
0
95
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
Transcript
Low fat backends For mobile guys
Alexandru Simonescu
[email protected]
@alexsimonescu http://blog.alexsimo.com “Do what you love. Love
what you do.” - Ray Bradbury
do you really need a backend? think twice
mbaas sometimes do the trick
mbaas cons not a golden unicorn _you depend on some
else infrastructure _normally can be cheap, related your needs _no full control, your data is not yours _sometimes hard to scale
and now what?
why not roll your own backend?
we all have a backend dev inside
backend cons or not :-) _custom backend is hard to
develop _can be expensive _i can’t setup infrastructure _i’m just a mobile guy
infrastructure AWS Digital Ocean VPS Dime ~ 5€ month
showtime create required entities, layers and configuration
kickstart 1. set project metadata 2. choose dependencies 3. download
4. import in favorite IDE 5. customize and run https://start.spring.io/
Rest controllers Data access layer Domain entities
hello world controller @Controller @RequestMapping("/status") public class StatusController { @RequestMapping(value
= "/", method = RequestMethod.GET) @ResponseBody public String status() { return "All looks ok from here! :-)"; } }
more complex controller @RestController @RequestMapping(value = "/movie") public class MovieController
{ @Autowired MovieRepository movieRepository; @RequestMapping(value = "/", method = RequestMethod.GET) public List<Movie> all() { return movieRepository.getAll(); } }
persistance entity @Data @Builder @Entity public class Actor { @Id
private Integer id; private String name; }
data access public interface ActorRepository extends JpaRepository<Actor, Integer> { }
rest data access @RepositoryRestResource(collectionResourceRel = "actor", path = "actor") public
interface ActorRepository extends JpaRepository<Actor, Integer> { }
run your backend @SpringBootApplication @Import(SecurityConfiguration.class) public class MoviecloudApplication { public
static void main(String[] args) { SpringApplication.run(MoviecloudApplication.class, args); } }
working project https://github.com/alexsimo/backend-low-fat