Passcamp is password manager for teams
It's feature set is heavily orianted for secure password sharing. This project tough me so much about security, e2e encryption, zero-konwalage algorithms.
I was in initial team in product design, and creation
In passcamp I developed Angular 4+ web application, some critical parts of backend infrastructure, Chrome, Firefox and Safari extension.
Angular 4+ passcamp.com web app
Passcamp was my first real project using Angular 4+, It was challenging because Passcamp uses a lot of real-time features, and handling all events is not an easy job.
This forced me to learn RFP (reactive function programming) RxJS.
I love RxJS because it enables me to model real-time event streams. This helps with complex real-time data. Additionally angular itself it's not easies the framework out there and now when I have more experience with frameworks like React I probably would not choose it.
But in one way or another it helped me master my CSS, HTML and Typescript skills to next level ❤️
Notable challenges
I needed encrypting and decrypting huge amounts of data in browser. I needed to create solution that does not penalize UX. So I used worker pool pattern.
It was kinda hard to implement because. In a worker, you don't have any dependency so before that, you need to bundle it down. Keep in mind that when I was developing this application there was not a lot of information about workers. And additionally, the certain browser didn't even support workers feature
Browser extensions
Browser extension was a really interesting and scary experience. I in first hand experienced what browser the extension can do.
Passcamp extension once again was built with Angular 4+. But this time in chrome and extension format.
Generally, chrome and firefox extension are the same. But there is a lot of differences with safari extensions.
Microservices and GoLang
For the backend we use Go programing language. With microservice architecture in mind
Go language is really neat and reliable. I wrote multiple microservices and each microservice had 100% test coverage. I love unit testing...
It was a nice experience because I initially didn't know the Go language. But interestingly I was able to grasp it really fast.
Conclusion
In Passcamp I learned a lot about modern product development, best practices, and how to write great software.
Learned Angular 4+ framework, Go lang language, rxjs and Typescript
- Company: Passcamp
- Working from: 2016 - 2018