Post Job Free
Sign in

MOBILE - FLUTTER

Company:
ZenSar
Location:
Pune, Maharashtra, India
Posted:
June 07, 2024
Apply

Description:

Expectations for Flutter development candidates

Have at least 2 recent Flutter projects with decent complexity (not 2 screen pet projects), deployed and maintained in production for at least a year.

2. Hands on experience with at least one native platform plus web. Candidate should be comfortable with writing native app code, even not particularly complex, for at least one native platform (iOS or Android), as well as vanilla web. Flutter Web platform code is pure Web, no frameworks, so candidate ought to at least have fundamentals (see below).

3. Well versed in Dart language, including (but not limited to) null safety, isolates, streams, and futures

4. Know difference between different flutter scaffolding, have experience tailoring Flutter apps to different platforms AND screens (not only for mobile phones, but also for tablets and desktops)

5. Have experience with Flutter app being deployed to iOS, Android, AND WEB.

6. Candidate should AT LEAST understand the concept of Flutter platform plug ins, and how they facilitate the communication with specific platform, where the boundary between Dart and native platform is, and how popular plugins work under the hood. Experience in IMPLEMENTING plugins is desirable, but not required. If candidate have only used plugins but can’t find how they work for any given platform – it’s a no-go. Examples include on-device storage, BLEs, positioning, and offline modes (that’ll include Web apps).

7. Understand dependency injection and its types, have used it in prod, can discuss benefits and fallbacks of more than one DI library for Flutter.

8. Understands layered architecture (benefits, pitfalls, and payoffs), clean architecture principles, knows patterns outside of MVVM and MVC, knows what happens with Flutter apps when they’re compiled, how they run on a particular platform. What is Flutter render loop, how widget lifecycles work, and how to leverage that.

Web fundamentals include things like

1. Native HTML specialized APIs, MediaDevices and MediaStream browser API, location api, vanilla JS code, written in HTML pages directly or by loading through script tag. If they done challenges like and done some extracurricular reading they should be fine

2. Understand how Flutter app is mounted into web page

3. What the DOM concept is, and how things like webpack, AJAX requests and browser’s fetch API work.

Generally speaking, if all Web experience candidate has is React or Angular applications, and they never get outside of what framework documentation says – they are likely not experienced with Web enough. We’re looking for experienced native developers, who have consciously decided to transition to Flutter.

native- in this case includes Web Developers, because from Flutter perspective Web is just another platform.

These requirements are intentionally set the bar pretty high, same way we set the bar high for Web Ui, Android and iOS developers. The strategy is to hire outstanding developers, and work with them for a long time, providing them good challenges and the possibility to see their work through and learn valuable insights by creating projects for a long-term maintenance and improvements.

Apply