Securing Your Dream Job as a Flutter Developer

abueldahab 107 views 43 slides Jul 27, 2024
Slide 1
Slide 1 of 61
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53
Slide 54
54
Slide 55
55
Slide 56
56
Slide 57
57
Slide 58
58
Slide 59
59
Slide 60
60
Slide 61
61

About This Presentation

how to get your dream job as a Flutter developer


Slide Content

Ahmed Abu Eldahab
GDE Flutter & Dart
@dahabdev
Flutter From Code to Career

Ahmed Abu Eldahab
Google Developer Expert in Flutter & Dart
Kortobaa CEO
Egypt/Saudi Arabia/UAE/USA
/Dahabdev

bit.ly/dahab-youtube

Flutter is Google's mobile UI
framework that provides a
fast and expressive way for
developers to build native
iOS & Android apps from
a single codebase

Flutter is UI toolkit to build,
test, and deploy beautiful
mobile, web, desktop, and
embedded apps from a
single codebase.

/DahabDev

Flutter is an open source
framework by Google for
building beautiful, natively
compiled, multi-platform
applications from a single
codebase.

/DahabDev
Build apps for any screen
&
AND MORE

/DahabDev

●100% Sound Null safety
●Packages manager https://pub.dev
●Virtual machine
●Compile to Javascript dart2js
●Compile to WASM
Dart is a client-optimized language for fast apps on any platform!
(Web - Desktop - Mobile - Embedded)

/DahabDev

Flutter 3.7
January 2023

/DahabDev
Year 2024
Dart 2.19
Dart 2.18
Year 2023
Flutter 3.19
Feb 2024

Dart 3.3
Flutter 3.10
May 2023

Dart 3.0
Flutter 3.22
May 2024

Dart 3.4
Flutter 3.3
January 2023

/DahabDev

Support

Productivity

Performance
/DahabDev
https://flutter.dev

/DahabDev
Webassembly
Wasm originated as a way of
running native code on the web

/DahabDev
Webassembly
Wasm is now available on the
stable channel
Migrare to package:web from dart:html

https://docs.flutter.dev/platform-integration/web/wasm

/DahabDev
Webassembly
https://docs.flutter.dev/platform-integration/web/wasm

/DahabDevPerformance
Next-Gen rendering engine

●Impeller on Android with Vulkan is now
a release candidate

/DahabDevPerformance
Next-Gen rendering engine

New rendering strategy Stencil-then-Cover
Enhances the rendering of complex vector graphics, allowing for
more detailed and efficient drawing of shapes and paths

/DahabDev
Vertex AI for Firebase Dart SDK
preview release


Support

/DahabDev
DevTools updates

●Enhanced native assets support for Android add-to-app
integration.
●Improved shader target selection for optimized shaders.
●Streamlined asset bundle management.
●Enhanced Gradle version handling for better compatibility
and stability.

/DahabDev
DevTools updates

●Enhanced native assets support for Android add-to-app
integration.
●Improved shader target selection for optimized shaders.
●Streamlined asset bundle management.
●Enhanced Gradle version handling for better compatibility
and stability.

/DahabDev
Dart Data Class
https://pub.dev/

/DahabDev
Dart Macros
https://dart.dev/language/macros


code to generate other code

/DahabDev
Dart Macros
https://pub.dev/

/DahabDev
Flame is a modular Flutter
game engine that provides a
complete set of
out-of-the-way solutions for
games
/DahabDev

flutter.dev/games
/DahabDev

flutter.dev/games
/DahabDev
Free & open source & multi platform
2D game development in Flutter

Flutter Casual Games Toolkit

flutter.dev/games
/DahabDev
Flutter Games Toolkit

/DahabDev

/DahabDev

/DahabDev

Securing Your Dream Job
as a Flutter Developer

Technical Skills

Version control
Mastering Git Flow
Feature branching, hotfixes, releases, pull requests
Github or Gitlab or Bitbucket
/DahabDev

●Dart types const - final
●Dart Streams
●Variables
●Control flow
●Functions
●OOP in Dart ( Classes, inheritance, Interfaces polymorphism, encapsulation)
●Testing

/DahabDev
Dart Language
Master Dart before diving into Flutter for a smoother learning curve.

Mastering Flutter Widgets
https://docs.flutter.dev/ui/widgets
/DahabDev

Mastering Flutter Widgets
https://docs.flutter.dev/ui/widgets
/DahabDev

Mastering Flutter Widgets
https://docs.flutter.dev/ui/widgets
https://www.youtube.com/playlist?list=PLjxrf2q8roU1quF6ny8oFHJ2gBdrYN_AK
/DahabDev

Flutter App Life Cycle
https://docs.flutter.dev/resources/architectural-overview
●WidgetBindingObserver
● Build Context
/DahabDev

Flutter Architecture
https://docs.flutter.dev/resources/architectural-overview
/DahabDev

/DahabDev
State Management
State Management Techniques
●Built-in:
○setState()
○InheritedWidget
●Third-party:
○Provider
○Riverpod
○BLoC
○MobX
○Redux
https://www.youtube.com/watch?v=TI1XovoHejA

/DahabDev
RESTful APIs
●API Integration Skills
○Http or Dio,
○JSON serialization
○error handling
https://jsonplaceholder.typicode.com
https://docs.flutter.dev/data-and-backend/serialization/json

Flutter & Dart Solid Principles
https://medium.flutterdevs.com/s-o-l-i-d-principles-in-dart-e6c0c8d1f8f1
https://medium.com/nerd-for-tech/solid-principles-in-a-flutter-32eaf7218476
/DahabDev

Design Patterns
/DahabDev
●Singleton Pattern
●Factory Pattern
●Repository Pattern
●MVC & MVM & MVVM Patterns

/DahabDev
Large Language Models


Data Insight Powerhouse
Analyzing large datasets, LLMs uncover hidden patterns,
propelling AI and ML advancements.
Transforming AI Applications
They enable complex tasks like coding and image
generation, paving the way for innovative uses in
education, AI assistants, and chatbots.
A New Focus in ML
Engineers are now harnessing LLMs through precise
prompting, leading to smarter, more adaptable AI tools.


LLMs are like super smart machines that
understand and speak languages

/DahabDev
Large Language Models

Tools You Need to Know
/DahabDev

Tools You Need to Know
/DahabDev

Start building AI-driven features

/DahabDev
https://flutter.dev/ai

/DahabDev
Will AI replace developers?

/DahabDev
Short Answer - No not yet!

Soft skills
/DahabDev

●Join Flutter developer communities
Medium, Discord and the Facebook. etc..
●Engage in meaningful discussions.
●Don't hesitate to seek advice and share your knowledge.
●Attend virtual meetups or conferences.
●Collaborate with other developers on projects.
Soft skills
Networking
/DahabDev

Soft skills

Email ID
/DahabDev

Email ID
Professionalism:
Choose an email ID that is professional and easy to read. Avoid using nicknames or numbers that don't have any
significance.
Good: [email protected]
Bad: [email protected]

Name Consistency:
If possible, your email ID should match the name on your CV and LinkedIn profile for consistency.

Domain:
Use a well-known email provider like Gmail or your own custom domain. Avoid using outdated domains as they may not
reflect well on you.

/DahabDev

Email Body
/DahabDev

●File Format: Always send your CV in a universally accepted format like PDF unless the job posting specifies
otherwise.

●File Naming: Name the file clearly, ideally including your full name and the word "CV" or "Resume".

Example: Ahmed_ibrahim_CV.pdf

●Subject Line: Use a clear and straightforward subject line in your email.


●Attachments: Double-check to make sure you've attached your CV and any other required documents before
hitting "send".


●Email Body: Keep the email body concise and professional. Briefly introduce yourself and mention the position
you're applying for.

Contact Information: Include your contact information in both your CV and the email signature.

References: Only include references if the job posting specifically asks for them. Otherwise, have them ready if asked
later in the process.
Email Body
/DahabDev

Email Body
/DahabDev

Apply, Apply, Apply
●Apply to multiple job postings.
●Don't get depressed by rejections.
●Keep a positive attitude.
●Keep track of your applications.
●Always follow up on applications.
/DahabDev

Thanks
/DahabDev

Ahmed Abu Eldahab
Google Developer Expert in Flutter & Dart
Kortobaa CEO
/Dahabdev