# Skills

This is just a fragment of the tools I had the pleasure of using. Nowadays, it would be difficult for me to name a tool
that I haven't had the opportunity to use, especially in the context of the Android platform. Therefore, whenever I have
free time - either during a project or after work - I like to explore known tools, looking for ways to even better use
their potential, improve efficiency or optimize existing solutions. I pay particular attention to new technologies such
as JetPack Compose, which has some of its libraries in Beta at the time of writing this CV.

### Programming

- **Java**: Advanced level, with experience in building and maintaining Android applications.
- **Kotlin**: Advanced level, with extensive experience in creating modern Android applications using best practices and
  design patterns.
- **JavaScript/TypeScript**: Advanced level, with broad experience in developing web and mobile applications.

### Frameworks and Libraries

- **React**: Expert in building interactive UIs for web applications using modern hooks and context.
- **React Native**: Advanced level, experienced in creating smooth and responsive applications for Android and iOS.
- **JetPack Compose** Creating modern and responsive user interfaces using Jetpack Compose, a modern tool for building
  user interfaces for the Android platform.
- **Redux**: Proficient in managing application state, including designing store, actions, and reducers.

### Tools and Technologies

- **Android Studio**: Advanced skills in the most popular IDE for Android, including debugging, profiling, and testing.
- **Android SDK**: Deep knowledge of the Android Software Development Kit, including Activity lifecycle, Android
  Jetpack, and other platform components.
- **Firebase**: Experienced in Firebase integration, including authentication, real-time databases, analytics, and push
  notifications.
- **SQLite/Room**: Advanced knowledge of managing local databases in mobile applications.
- **Git**: Proficient in version control and collaborative work using Git.
- **CI/CD**: Experienced in automating build, test, and deployment processes using tools such as Jenkins, Travis CI,
  GitHub Actions.

### Testing

Ability to write and maintain unit and UI tests for Android applications.

- **JUnit/Espresso**
- **Maestro**
- **Spock Framework**

### Other Skills

- **Understanding of Design Patterns**: MVC, MVP, MVVM, and others used in mobile and web applications.
- **UX/UI Principles Knowledge**: Ability to create intuitive and visually appealing user interfaces.
- **Teamwork**: Excellent teamwork skills, with experience in remote work and agile methodologies.
