A rundown of skills I've acquired on my journey

I get asked a lot about what it is exactly that I do, since software engineering is rather broad. I'm certainly not a jack of all trades but, here’s a list of all of the skills I've acquired through the years.

Android

  • Kotlin

    I've been creating android applications with Kotlin for 3+ years. Having migrated from Java, and regretting not having done it earlier, I love the language and enjoy creating with it. My published android application Ramanie has been built entirely using kotlin.

  • XML

    XML has been at the core of my android projects, I've built complex user interfaces with it for more than half a decade. Until fairly recently, I have been using it nearly everyday. With recent developments in the android ecosystem, I've had to adapt and migrate to Jetpack compose

  • Jetpack

    This new suite of libraries from Google has improved my workflows, I'm now able to churn out user interfaces way faster and with less code. Old habits die hard though, so I'm still an xml fan.

  • Room

    An android library that helps me manage the local database, this library fastens the development of a complete android app. Since mobile development often requires an offline first approach, room comes in handy when creating an offline first app or any other app that has offline capabilities.

  • Architecture

    This is not a tool/library, but entails an approach to app development. There are a couple popular development patterns that I work with, primarily: MVVM and MVI. These architecture patterns ensure that I build scalable apps and make introducing a new feature a whole lot easier.

Web

  • Typescript

    Coming from Java and Kotlin, I always struggled to work with javascript due to the lack of type safety. I preferred creating with typescript, which is basically a superset of javascript, since a project wouldn't complie unless everything was in order. A couple other typescript-exclusive features like enums convinced me to stick with it.

  • Angular

    I started building web applications with this framework ~3yrs ago and enjoyed working with it from the get-go. I've built robust client projects with it and even websites with it, until I realised that it wasn't meant to do everything. My website ramanie.com , was built using angular, but due to poor seo options I'm building a new site with a different framework/library, one built with seo in mind.

  • React Js

    Building a web app or site with the react library is vastly different from angular, optimising a project for search engines is so much easier, probably because it was built with seo in mind. I've been tinkering around with it and creating beautiful products, having worked with it for nearly a year now, I have gained the much needed experience to build robust front-end web apps and site.

  • Tailwindcss

    Just like Saul Bass, I want every project that I'm a part of to be beautiful and tailwind helps me achieve that. I use tailwind in most of my web projects and I enjoy creating stunning user interfaces with it. Writing css became a thing of the past once I came across this library.

Design

  • Wireframing

    I take my time with any project to fully understand what the objectives are and what the user journey and therefore experience should look like. I use wireframes to quickly put together something visual yet simple that can relay the vision to the rest of the team or the client.

  • Figma

    A great tool for creating high fidelity wireframes; I'm still learning how to use it and integrate it into my workflow.

Languages

  • English

    I am a native speaker of English with C2 proficiency according to the CEFR. A recent test bears testament to this, here's a link to my certificate.

  • Español

    I am actively learning spanish and have progressed from A1 beginner to a B1 intermediate speaker. Puedo usar expresiones diferentes de acuerdo al contexto social.

  • Français

    My french is pretty weak since I haven't been practicing, therefore it's at the A1 level of proficiency, for now.

  • Swahili

    Living in Nairobi, swahili is the go-to language for everyday converstations. My swahili proficiency is at a B1 level; I can get my message across effectively.