/developer-handbook

An opinionated guide on how to become a professional Web/Mobile App Developer.

MIT LicenseMIT

Developer Handbook 2020 - Created for Apptension

An opinionated guide on how to become a professional Web/Mobile App Developer.



Developer Handbook 2020 License Maintenance


Overview

🔹 Developer Handbook 2020 🔹 was created to cover the most common technical questions and requirements appearing prior to job interviews, during onboarding or personal goals / career planning at our company - Apptension. We also like to call it a Technical Documentation of our company.

It contains a lot of subjective technical groups, opinionated technologies, vetted requirements and best practices we gathered for Web & Mobile Developers.

Enjoy reading! 🙇


What will you find inside?

  • Technical Stack – a summary of all topics, languages, frameworks, and libraries we use in production together with checklists of the most important concepts.
  • Technical Guide – a complete list of topics (libraries, frameworks, programming concepts/patterns) we follow and recommend to learn to progress in your career to become a better Web / Mobile App Developer.
  • Technical Onboarding Checklist – a living document with a checklist of what our Developers should know on different levels when they join our company.

Developer Handbook 2020 Architecture


Apptension Technical Stack

Apptension Technical Stack covers all viable concepts we follow at our company in order to develop production-ready code.

Frontend Developer

Backend Developer

DevOps Developer

Mobile Developer


Apptension Technical Guide

This section describes all technical topics (career development goals, good habits, technologies, libraries, frameworks) divided into career levels that you can use to validate your technical skills and technical decisions taken in the projects you do.

Frontend Developer

Backend Developer

DevOps Developer

Mobile Developer


Apptension Technical Onboarding Checklist

This section describes technical prerequisites for Junior, Regular and Senior Developers who will join or recently joined our company. This is a checklist of concepts we will help you learn during your first two weeks with us.

Frontend Developer

Backend Developer

DevOps Developer

Mobile Developer

Q&A

Do I need to know everything that’s under Regular (for instance) list to take a Regular position?

No, hiring a person is very subjective and will take in count things other than the technical knowledge. This is the guide of what we consider a Regular developer will face during their career path in the company. This is valid for any seniority level.

What’s the purpose of Onboarding?

We consider “Onboarding" the 2 weeks time where a developer will start working in our company. The list under this category is a guide of what skills you should learn/show during these first 2 weeks.

I have many years of experience and I’m considered Senior in another frontend stack, but I don’t know much about the company’s stack. Does it mean I will take a Junior position?

We know developers are very skilled when it comes to learning, and we’re sure a Senior frontend dev will catch up with our stack if he knows what to do. This is exactly what this guide is for :)

To get promoted from Junior to Regular, do I have to check all items in the Junior or Regular section?

A Regular developer should know almost everything (if not everything) from the Junior category and present the skills to learn what’s in the Regular category. In other words, we see that to move from Junior to Regular a developer needs to present a good amount of skills from both. And of course, with soft skills that are analysed case by case.

If I want to work for Apptension, what do I do?

Apply on our webpage - https://apptension.com/jobs - and good luck!

Can I contribute to the list?

Yes, contribution is accepted in adding new content for the guide and questioning/correcting mistakes. Since this is a list of tech we use, the introduction of new items should come from the Apptension team. But feel free to fork and use it as your own learning guide!


Contribution

We are very open to contributions to extend or change the requirements based on your gut and experience. To contribute you can use a pull request which will be later validated by our technical team and added to the main docs.

If you will spot any issues please add them in the Issues section.

Credits

This page is maintained by the 🇵🇱 Apptension team.

License

MIT License

© 2020 Apptension Sp. z o.o.

Built and maintained by Apptension.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.