I teach Operating Systems to CS students and guide fellow professionals through legacy codebase maintenance, practical software architecture, and new language/framework learning skills.
For students, I offer two types of sessions - one is a lecture-style session where I can go over course notes/slides on a particular topics and offer additional explanations and examples to improve your understanding of the material. Another type is an assignment take-up session where I can go over a past assignment and guide you through steps to solving it.
For working professionals, I offer the following options:
Focused problem-solving sessions - if you have a particular issue that you're stuck with in a project you're working on, I can pair with you over Zoom screen-sharing
Code review - if you cannot understand how to work with part of your codebase or if you'd like a second opinion on work that you've just completed, I can pair with you over Zoom and do a live code review and/or prepare ahead of time and go over my findings on a call
Long-term mentorship - if you would like to learn some more fundamental skills or pick up a framework/design pattern/best practices, I can develop a custom-tailored learning plan that fits your skill level and schedule and offer regular teaching sessions with optional take-home exercises
I am a tech founder and a senior polyglot/full-stack developer, with a passion for teaching and mentorship. In a bit of spare time from my work, I am looking to help fellow software developers get more comfortable with our craft and exercise my teaching skills while I'm at it.
So far, I've done a wide range of work - web app front-end and back-end, data pipelines at scale, DevOps/infrastructure, mobile (quite a bit of iOS and previously some Android) and some security. I have a reasonable taste for UI design and user experience, despite that not being my primary specialization.
The industries I've worked in so far were heavily concentrated around finance/banking/FinTech and GovTech, although I've also been a founding developer at a couple of B2C startups and learned a lot throughout that experience.
My personal research interests include operating systems and programming language theory.
As cliche as it sounds, I try to learn something new all the time and I consider this of vital importance to my professional skillset. I always prioritize systems understanding and learning how to learn over memorizing APIs - and it's a philosophy that I try to share with my students as well.
Teamwork and constant exchange of expertise with my peers is a close second most important value to me. A software product can be almost meaningless without a team that welcomes learning from failures, encourages curiosity and fosters true human friendships, and empathy both towards each other and towards the customers of the software we create.
Intro/triage call [free of charge] [15 min] - this is a Zoom video call where I try to understand your background, the problem you're looking to solve and whether I believe we'd be a good fit for a productive mentor/mentee relationship.
Supplemental terms acceptance - as an independent contractor and not an employee of Arc, I ask my clients to accept a few additional terms that make session time measurement, scheduling and work product acceptance more precise, and further clarify the extent of our mentorship relationship.
Creation of Freelance Job/Scheduled Session on Codementor - if you haven't done that yet, I will ask you to create and assign me a freelance job and/or a scheduled session with a precise description of the topics we would be covering.
For certain sessions, preliminary preparation may be required - if that is the case, we would discuss the details and estimated time ahead of time and a Freelance Job would be required to cover the effort of the preparation.
Please take a look at my Codementor calendar to plan intro calls and sessions. Generally, I am available between 3:30pm and 8pm Eastern Time (New York/Toronto), Monday to Saturday, but I try to schedule all of my teaching engagements between 6pm and 8pm whenever possible.
IMPORTANT: Urgent sessions are unfortunately not available at this time. I am currently working through Codementor as a mentor, and unable to work as an on-call freelance developer.
Please also note that I cannot provide consultations over chat - in my experience, it's generally more time-consuming for everyone, and copy-pasting code over chat can get messy. For those reasons, I only work through Zoom video calls with screen sharing.
If you have any questions about the process or would like to book a call, I am happy to chat on Codementor - I should be usually available Monday-Saturday, 1pm - 8pm Eastern Time, subject to my other engagements. While I try to respond as soon as I can, I may take up to one business day or longer depending on how busy my schedule might get.