0% found this document useful (0 votes)
2 views

Flutter Developer Technical Assignment

Uploaded by

harsh
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Flutter Developer Technical Assignment

Uploaded by

harsh
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

Flutter Developer Technical Assignment

Overview
Create an Exercise Roadmap application demonstrating your proficiency in Flutter development, focusing on
UI implementation, schema design and low-level system design. The app will present daily exercises in an
interactive roadmap format with custom animations and persistent user progress tracking.

Flutter Version to Use: 3.24.3


Timeline: 3 Days
Repository Requirements: Private GitHub repository with regular commits

Core Requirements
Your UI should closely resemble the shared designs unless mentioned otherwise

1. User Interface

Home Screen

● Implement the given roadmap visualisation.


● Create a curved path connecting nodes.
● Each node is the visual representation of one day of the roadmap, each day will contain multiple
exercises, and each exercise contains multiple MCQ questions.
● A new day will unlock (i.e. its node will be tappable) only when the user has finished all exercises of
the previous day. Similarly, a new exercise in a day will be unlocked once all the questions of previous
have been attempted.
● Once an exercise has been completed, the number of correct answers will be shown next to the
exercise in the bottom sheet as in the given examples.
● The first node (Day 1) starts at the top of the screen, and the numbering of days increases from top to
bottom.
● The number of days visible depends on the screen size and the user will have to scroll up to view the
remaining days.
● When a new day unlocks, the colour of the animated path connecting the most recently unlocked
day’s node and the previous day’s node should change smoothly via an animation.
● No need to match the exact position/coordinates of nodes as in the UI. They can be placed randomly,
just not hardcoded.
● The nodes should:
○ Be positioned randomly on the horizontal axis (avoid manually entering the node
coordinates)
○ Maintain equal vertical spacing
○ Persist their positions across app restarts
○ Represent different days of exercises
○ Be interactive (tappable)

In the above image, “Adjectives” represent Day 1 and “Adverbs” are for Day 2
Exercise Bottom Sheet

● is triggered by tapping a node


● displays a list of exercises for the selected day
● has smooth transitions for sheet appearance/disappearance
● should display relevant metadata as in the screenshots
Exercise Question (MCQ) Screen

● Clean presentation of MCQ questions


● Answer selection mechanism
● Answer checking mechanism
● Progress indication
● Navigation back to roadmap
● You may use placeholder images in place of the vector graphics given
● Data given in the demo video or the screenshots are just examples. You have to use the exercise and
question data as given at the end of this document.
UI Flow Video Link:

https://youtube.com/shorts/Af-DoKI2zwQ

2. System Design

Application Architecture

● Write a high quality, clean, and organised code base


● Separate concerns (UI, Business Logic, Data)
● Use proper state management solution
○ Preferred State Management Solutions: Provider, Riverpod and Bloc

Design a scalable db schema that includes:

● User data structure


● Exercise data (each exercise contains multiple MCQ questions) for each day
● Progress tracking (which exercises user has completed, and their results for them)

3. Account Creation System

● Basic login with username


● No need for security/password/authentication/authorization
● User data persistence on logout-login and app uninstall

4. Code Quality

● Clean, maintainable code


● Provide documentation where needed
● Consistent naming conventions
● Error handling

Evaluation Criteria

UI/UX

● Visual accuracy compared to provided designs


● Animation smoothness
● Attention to detail
System Design

● Architecture choices
● Code organisation
● Data flow
● Performance optimization
● Scalability considerations

Code Quality

● Code readability
● Project folder structure

Submission Guidelines
1. Create a zip file of the codebase, and mail it to [email protected], cc: [email protected] and
[email protected]
○ You can also upload the zip file in a google drive folder and share the link with us
2. Include README with:
○ Setup & compilation instructions
○ Architecture overview
○ Design decisions
○ Known limitations
3. Demo video showing key features
4. Database schema documentation

Bonus Points
● Implementing elegant error states
● Adding loading animations
● Implementing a caching system
● Implement a clean architecture pattern
● Creating custom animations
Exercise Data for Day 1 to 6

Day 1 - Adjectives

Exercise 1: Compound Adjectives

1. The company implemented a _ security protocol for their data centers.


a) cutting-edge
b) cutting edge
c) edge-cutting
d) edge cutting
Answer: a
2. The physicist presented a _ theory about quantum entanglement.
a) ground breaking
b) ground-breaking
c) breaking-ground
d) break-grounding
Answer: b
3. The expedition required _ equipment for the harsh Antarctic conditions.
a) military grade
b) military-grade
c) grade-military
d) grade military
Answer: b

Exercise 2: Participle Adjectives

1. The _ evidence presented at the trial changed the jury's perspective.


a) overwhelming
b) overwhelmed
c) overwhelm
d) overwhelms
Answer: a
2. The archaeologists discovered a _ manuscript in the ancient temple.
a) fascinated
b) fascinating
c) fascinate
d) fascinates
Answer: b

Exercise 3: Order of Adjectives

1. She purchased a _ briefcase for her new job.


a) leather expensive Italian
b) Italian expensive leather
c) expensive Italian leather
d) expensive leather Italian
Answer: c
2. The museum displayed a _ artifact from the Ming Dynasty.
a) porcelain ancient valuable
b) valuable ancient porcelain
c) ancient valuable porcelain
d) porcelain valuable ancient
Answer: b

Day 2 - Adverbs

Exercise 1: Adverbs of Manner in Complex Sentences

1. The soprano _ executed the challenging aria, earning a standing ovation.


a) flawless
b) flawlessly
c) flawlessness
d) flawlessing
Answer: b
2. The quantum computer _ processed the complex algorithms, surpassing traditional
computing methods.
a) efficient
b) efficiency
c) efficiently
d) efficienting
Answer: c

Exercise 2: Comparative and Superlative Adverbs

1. Among all the competitors, Sarah completed the triathlon _ than expected.
a) more impressively
b) more impressive
c) most impressively
d) impressive
Answer: a
2. The financial analysis was presented _ of all the quarterly reports.
a) more comprehensively
b) most comprehensively
c) more comprehensive
d) comprehensive
Answer: b
3. The AI system performed _ in the latest benchmarking tests.
a) more sophisticated
b) sophisticatedly
c) most sophisticatedly
d) sophisticated
Answer: c

Day 3 - Conjunctions

Exercise 1: Correlative Conjunctions


1. _ did the research paper receive acclaim for its methodology, _ it was praised for
its innovative conclusions.
a) Not only / but also
b) Either / or
c) Neither / nor
d) Both / and
Answer: a
2. _ the quantum theory _ the string theory could fully explain the observed phenomena.
a) Both / and
b) Either / or
c) Neither / nor
d) Not only / but also
Answer: c

Exercise 2: Subordinating Conjunctions in Academic Context

1. The experiment yielded unexpected results _ the researchers followed the protocol
precisely.
a) although
b) because
c) unless
d) if
Answer: a
2. The archaeological team will continue excavating _ they find evidence of the ancient
civilization.
a) unless
b) until
c) while
d) whereas
Answer: b

Day 4 - Prefix Suffix

Exercise 1: Scientific and Academic Prefixes

1. The researcher's _ analysis of the data revealed several anomalies.


a) meta
b) pseudo
c) anti
d) poly
Answer: a
2. The team developed a _ solution that addressed multiple problems simultaneously.
a) mono
b) uni
c) multi
d) bi
Answer: c

Exercise 2: Advanced Suffixes in Technical Context


1. The _ of quantum mechanics requires extensive mathematical knowledge.
a) complexity
b) complexify
c) complexification
d) complexize
Answer: c
2. The artificial intelligence showed remarkable _ in problem-solving tasks.
a) adaptable
b) adaptability
c) adaptation
d) adaptive
Answer: b

Day 5 - Sentence Structure

Exercise 1: Inverted Sentence Structures

1. _ the revolutionary technology that the potential for clean energy became apparent.
a) Not until the scientists developed
b) Until the scientists developed
c) The scientists developed until
d) Developed the scientists until
Answer: a
2. _ the complex theories of quantum physics lies a simple mathematical principle.
a) Beneath
b) Under
c) Below
d) Underneath of
Answer: a

Exercise 2: Parallel Structure in Complex Sentences

1. The research involved _ data, analyzing statistical patterns, and presenting


conclusions.
a) to collect
b) collecting
c) collection of
d) collected
Answer: b
2. The CEO's strategy was _, innovative, and transformative.
a) being bold
b) to be bold
c) bold
d) boldly
Answer: c

Day 6 - Verbs

Exercise 1: Perfect Progressive Tenses


1. By next year, the scientists _ on this project for a decade.
a) will have been working
b) will be working
c) would have been working
d) would be working
Answer: a
2. The AI system _ increasingly complex patterns before the anomaly was detected.
a) had been recognizing
b) has been recognizing
c) was recognizing
d) is recognizing
Answer: a

Exercise 2: Modal Perfect Verbs

1. The experiment _ different results if the temperature had been controlled more
precisely.
a) might yield
b) might have yielded
c) must yield
d) must have yielded
Answer: b
2. The research team _ the deadline, but the equipment malfunction caused delays.
a) could meet
b) could have met
c) should meet
d) should have met
Answer: b

Exercise 3: Subjunctive Mood

1. The ethics committee recommended that the study _ immediately.


a) be terminated
b) is terminated
c) was terminated
d) were terminated
Answer: a
2. The professor suggested that each student _ their own research methodology.
a) develops
b) developed
c) develop
d) has developed
Answer: c

Note: While the instructions are comprehensive, you may encounter points of
interpretation. Rather than seeking clarification, proceed with your best judgment and
briefly note your reasoning. Your decision-making process will be evaluated as part of the
assessment.

Good luck!

You might also like