Beyond writing Code

Is writing or crafting code all that there is to software engineering? For some people the answer to this question would be a resounding yes however to others it would be a no. To me, as a Engineer working at BCaster, the answer is obviously "there's more to software engineering than crafting code".

This is true in so many ways and we'll explore more on that as this post goes on. More often than not developers, programmers or software engineers fall into the dreaded black hole of focusing so much on crafting code that they seem to forget the main purpose of the Engineering discipline. Engineering is about problem solving and as developers, programmers or software engineers the aim is to solve problems using programming as our tool of choice as opposed to seeing programming as the solution. Programming is only a tool. How your programming knowledge is applied is the "determining factor for the solution". What's next after code crafting? What's next after solving the problems you're paid to solve? You'd be shocked that a lot of developers do not have an answer to this question, and that's totally fine as everyone is entitled to have opinions that it's code crafting for them and that's all. For me "working is way more than coding" and thanks to BCaster, I get to do a lot more than just crafting code.

Ever heard of Developer Evangelism or Developer Advocacy? Developer Experience? Mentoring? Well these are some of the hats I wear.

As software engineers we tend to solve a lot of problems however there are a lot of problems in our own backyard that we haven't given enough attention and this is where being a software engineer goes beyond coding. The tech world has a lot of issues, chief amongst those are diversity, inclusion and accessibility. As great problem solvers that we are, we haven't solved some of our own most critical community issues. Lately (the past few years) there has been a huge "commitment" towards addressing these issues and I'm super glad for how far the tech community has come in that regards, however, there's still so much left to be done and this is where my role beyond coding comes into play. In 2017 (even before I joined BCaster), together with three friends I started a project called CodeAfrique. CodeAfrique is a not-for-profit software engineering weekend intensive bootcamp where we train software engineers who belong to any under-represented group in Tech. The picture you see at the top is me sharing knowledge acquired from code afrique at EmberConf2019 (The most inclusive and diverse technical conference out there).

1_eSVk_MPa4yLxMMOHkMmHIQ

How did I get to eventually speak outside of Europe mainland? Well having lectured for a semester in Tallinn University of Technology (TalTech) and spending the past two years teaching at CodeAfrique as well as delivering workshops et al, public speaking wasn't really new to me, but like most tech speakers in Europe, we tend to stick to the European continent when submitting proposals to speak at conferences. Speaking at EmberConf gave me way much friends than I could imagine. It opened me up to a tech community that is more like a family. A community that cared about the things beyond crafting code. A community highly focused and hugely invested in Diversity, Inclusion and Accessibility. A community where I was sure my students at code afrique would feel welcomed. I got to meet my programming idol Yehuda Katz (I've read so many lines of code by him that I could make a book on it), amazing people like Jessica Jordan, Leah Silber, Tom Dale, Kenneth Larson, Igor Terzic, Julia Donaldson, Chris Ng, Melanie Summer, NullVoxPopuli, James C Davis, Jen Webber, Todd Jordan, Jennifer Wong and many others too numerous to mention.

Before making a speaking proposal for EmberConf, I joined a CFP (Call For Proposals) session video call to see if what we've learned at CodeAfrique would be interesting to share to the larger ember community. As a person of colour who has attended conferences without any single speaker being a person of colour, seeing Jessica Jordan on the video call already gave me a great sense of belonging and I was sure going to submit a proposal. Also, a great part of me applying was down to our Software Development Lead at BCaster Eero Sario. When your Engineering manager has so much confidence and belief in your abilities that he's ready to support you to always put yourself out there, nothing can be more reassuring and confidence boosting.

Screenshot-2019-04-01-at-14.26.46

I went to the conference to talk about why ember is for everyone I talked about my experience with teaching beginners about Javascript at CodeAfrique and why Ember was more beginner friendly based on it's strong convention over configuration as well as other simple concepts in terms of clarity of purpose and a better focus on "how it works" before worrying about "why it works as it does". Teaching absolute beginners with no programming experience can be quite tricky. When not done properly it could lead to frustration and people dropping along the way. The Goal for us at code afrique was to make sure we reduced the number of people that'll drop out when learning to be at a maximum of zero.

As always I try to ensure my posts in public space are as non-technical as possible in order to make sure everyone, most especially beginners, can always follow on and relate. In the end, as software developers, it is important to go beyond crafting code. You can decide to share your knowledge via technical blog posts, speaking at conference, mentoring a newbie, giving internal/external workshops or you can as well come help us teach at codeAfrique (We have a remote version) etc. Giving back to the tech community via codeAfrique is my "beyond writing code" story. Sharing my knowledge with the public is my "beyond writing code" story. This wouldn't have been possible for me without the support I get at BCaster. What is your story beyond crafting code?