Use SpaceX.xcworkspace to open the project, wait for SMP to resolve packages and you’re ready to go.
How did I do?
It was a pretty challenging task in fact as we agreed that it should take no more than 2-3 hrs. To use my time to the fullest I divided it into three ~1 h sprints:
Core functionality
Improving underlying code abstractions
UI related polishes
I have implemented core functionalities with the help of SnapKit and Alamofire (as recommended for the challenge) and used Swift Package Manager as a dependency management tool.
To save time I used quicktype to generate DTO structs.
I didn’t spend too much time (~25 mins) polishing and designing fancy animations, but instead I focused on developing facilities that make UI development fast and robust (check Launches.playground and ViewMocksTests scheme). I also invested in decoupling of the View, ViewMocks, and a service-layer abstraction decoupled at the main target level via DecodedValueProviding.
What could have been done better?
There is plenty of things that can be done better here. I’m fine to discuss them in the next stage of the interview process
Thanks again for considering me as a candidate and inviting me to the coding challenge @emelt. I’m looking forward to your feedback soon!
SpaceX
Coding challeng for Mav Farm.
How to use?
Use
SpaceX.xcworkspace
to open the project, wait for SMP to resolve packages and you’re ready to go.How did I do?
It was a pretty challenging task in fact as we agreed that it should take no more than 2-3 hrs. To use my time to the fullest I divided it into three ~1 h sprints:
I have implemented core functionalities with the help of
SnapKit
andAlamofire
(as recommended for the challenge) and used Swift Package Manager as a dependency management tool.To save time I used quicktype to generate DTO structs. I didn’t spend too much time (~25 mins) polishing and designing fancy animations, but instead I focused on developing facilities that make UI development fast and robust (check
Launches.playground
andViewMocksTests
scheme). I also invested in decoupling of theView
,ViewMocks
, and a service-layer abstraction decoupled at the main target level viaDecodedValueProviding
.What could have been done better?
There is plenty of things that can be done better here. I’m fine to discuss them in the next stage of the interview process
Thanks again for considering me as a candidate and inviting me to the coding challenge @emelt. I’m looking forward to your feedback soon!