Develop architecture to meet both functional and non-functional requirementsManage and assign tasks to team members to meet the deadlines and follow through with the planDevelop and maintain a productivity discipline for efficient communication and collaboration among team membersSelect a software stack
Hardworking
Applied knowledge of data structures and algorithms
Applied knowledge of design patterns
Applied knowledge of distributed computing
Applied knowledge of (decentralized) cloud computing
Unix-like OSes power user
Applied knowledge of deployment techniques and tools
Familiarity with the following programming languages: Swift, Objective-C, Java, Ruby
Familiarity with some of the web frameworks such as Gin, Flask, Express, etc.
Applied knowledge of the SQL and NoSQL databases
Familiarity with mobile application development frameworks such as UIKit and Android SDK
Applied knowledge of test driven development
Applied knowledge of development tools and softwares
Proven track of effective management of software development teams to ship quality products