Let's be honest for a moment. I don't mean this as a cliche statement to then go on to express something that, will either make me look good, or to emphasise a point.
I mean it, let's be genuinely honest, I got into this industry based on lies, not something I'm proud of, but that was and is the state of the industry.
How many times have you seen some utter nonsense requirements in a job description requiring an entry level job to have 2 years professional experience?
My first job in this industry was teaching a programming language that I didn't know. Of course, I had informed the company that I didn't know Java. to which they reassured me, 'don't worry, we will teach you'. This practically meant, I'd be learning while in the same classroom of 20-25 inquisitive students asking me questions. Slowly, but skilfully uncovering my imposter status.
Baptism by fire, I call it when recalling, giving a lecture on MYSQL only having learnt it from the beginning, the previous evening and either being grilled by students to the ninth degree or in front of the entire class corrected by senior mentors.
Let's just say this created some insecurities that had to be dealt with.
What lies did I tell? Well, my CV resembled a complete work of fiction. I listed only personal projects that I had worked on as companies and these projects were very basic. I had listed expert knowledge of GIT, CI, CD, Github, PHP and Javascript. When in reality, I had merely heard of the technology and had either no or a vague idea of what it did.
"Fake it, till you make it" is a well known expression, one that I unintentionally began to live by.
later on, I'd alway add "Fake it, till you make it, then if you're smart match your skills to the lies you told"
This is exactly what I did, I slowly, but surely, I learnt. The learning curve was near vertical and burn out was a constant state.
When teaching in the bootcamp, I observed an interesting trend. I noticed that absolutely anyone can learn nearly anything, the only factor that changed was the time it took. It was at this point I realised in terms of computational thinking, I was not a particularly good programmer. I was not the smartest, nor the fastest at understanding new concepts. I would see some students, I was supposed to be teaching, out pace me in learning the course material.
This uncovered to me the nuance of technical knowledge, made me understand that there is a very big difference between having strong technical knowledge and being able to see the bigger picture, be mentally flexible and most importantly understanding there is no objectively right answer, but only an approach.
This difference is paramount. It's the difference between being able to build something and having the idea to build it in the first place. It's the difference between knowing any solution that works, isn't necessarily the right one or good for the project. It's the difference between having a contextual mind or not.
I'd half jokingly say to student's "I'm a mediocre programmer that is smart enough to get programs to fix my code to make it better, much better and quicker than I ever could." something that at the time was not done so much. But I realise now, this statement was completely true.
Caring about the success of a project, but also allowing ideas regardless of where they come from, to win over your ego is no easy feat. An achievement that I rarely see in tech, and even rarer in business.
I would notice this starkly when I would roam the wilderness of the internet looking for a solution to a problem I was facing at the time. If you want to get the measure of a person, see how they treat another, starting to learn their field of expertise.
Places like Stack Overflow, were full of programmers that would begrudgingly help a brown eyed and bushy tailed newbie, but there was always an attitude of superciliousness, impatience and passive aggression. An attitude I vowed never to inherit.
The answer you get is only as good as the question you ask. A common phrase that was thrown about. We all can, and probably have asked stupid questions, but as I began to realise, if in the very asking of a stupid question, one reveals a new train of thought and/or uncovers a better question then surely it’s worth it.
There really is no such thing as a stupid question, but of course not all questions are created equal, some are more equal than others.
But this approach misses the point. Generally, when you start learning something new it’s because you want to reproduce, for your own purposes, something you’ve seen that inspired you. I remember writing my first SQL query to display records from a table, I also recall the feeling of it being exhilarating and the sense of endless possibilities of creativity. I day dreamed of all the things I could build with my new found power.
In the case of newbies, there is generally a clear objective, but the path to achieving it, is unknown and in one's enthusiasm, one focuses too much on achieving the objective and not enough on understanding the principles at play determining the path.
It was from this nuanced understanding that I came to discover the fallacy of contemporary methodologies. I discovered basecamp's
Shape Up by Ryan Singer. A different way of thinking when it comes to project development. I Began to understand that less really is more and that perfection is not approached when you have nothing left to add, but when you have nothing left to remove.
My journey into the tech industry was bumpy, wild and mad. I'm shocked, honoured and humbled by the trust that companies have had in me and I'll forever be the maverick that I am, shaped by this industry.