Skip to content
Susan Ma

AUTHOR

Susan Ma

Software Engineer

Select...
Select...
From Coding Lonely to DevRel Ceremony - My Apprenticeship Journey cover image

From Coding Lonely to DevRel Ceremony - My Apprenticeship Journey

๐Ÿ‘Ž  Nervous, confused, belittled, defeated. These words describe the beginning of my professional coding journey. ๐Ÿ‘  Empowered, excited, determined, appreciated. These words describe how I feel now, at the end of my apprenticeship. This sounds like an impossible 180, doesn't it? Let me tell you about this wild journey, and the things I learned along the way. ๐Ÿฃ  Where it all began.. At some point in our careers, we've been on that rollercoaster of excitement that quickly mixes with fear and doubt. Maybe you just started a new job, transitioned careers, or perhaps you're on that rollercoaster _RIGHT NOW_. ๐ŸŽข  I felt this intensely when I was in my first dev job - I just moved to a new city, graduated from coding boot camp, and immediately started in the tech field within four months. Talk about moving fast! ๐Ÿ’จ Fast forward seven months into my first dev job, and I found myself terrified of asking for help, staring at bugs with no support or solutions, and crying every night from the frustration. ๐Ÿ˜ช  Although there were people who were sympathetic to my situation, I didn't feel good about myself or my job. I think we've all worked at places where we didn't feel supported, so I'll spare you the details. Bottom line - I realized that this environment was not conducive to my learning, and my confidence had broken down into rubble. ๐Ÿคทโ€โ™€๏ธ  Where was this person who was so eager and excited to learn? ๐Ÿค”  Where was this person who was determined to find solutions, and contribute to the team? These were questions with answers that I didn't like, and didn't want to accept. So, I finally scrounged up the courage to quit. I FELT SO MUCH RELIEF! ๐Ÿ˜ฎโ€๐Ÿ’จ  I didn't realize this at the time, but this was my form of self-care. To prioritize my health, and to *stop* the abuse. This new feeling of freedom felt so foreign to me. It was almost scary. But, I knew I broke the cycle, and I felt like I could breathe again. ๐Ÿซ _My Stress_ by NF speaks to the internal turmoil I felt during this time. _(".. Internal turmoil?" I know it sounds dramatic, but this period of my life was.. Rough.)_ .... So, what now? ๐Ÿฆ— ๐Ÿคทโ€โ™€๏ธ  Why an apprenticeship? I wanted to code professionally, and stumbled upon This Dot's apprentice program, which was geared towards women in tech. This felt like a good mix of getting support as a junior dev, but also exploring opportunities to help others in underrepresented groups. I felt hesitant about an apprenticeship at first. ๐Ÿ˜ฐ  I felt embarrassed to go from a junior dev position to being an apprentice. Of course, the clouds of doubt started reigning over. What if I can't fulfill the job? What if I look stupid? But when I started at This Dot, that attitude changed _REAL_ quick. I was welcomed with open arms by people who didn't even know me yet. In the back of my mind, I felt... suspicious. Why are they being so nice? _What are they buttering me up for?_ ๐Ÿงˆ  My past experience wouldn't let me trust the positivity that I witnessed in this workspace. But in this new position, I had access to a whole new team, including senior engineers who had been through what I've been through and more. Not only was I able to work on coding projects with various clients - I was able to experience a whole new role in tech called DevRel (aka developer relations). And when I tell you that the work took off, _IT_ ๐Ÿ‘  _TOOK_ ๐Ÿ‘  _OFF_. As an apprentice, I had the flexibility to try out different projects. Within DevRel, I was able to write blogs, create Twitter content, and host This Dot events. But most importantly, I worked with a team that treated me with respect. I was afraid to veer away from 100% coding because it was all I knew, but I gained so much fulfillment from writing technical content, and engaging with the dev community. I was openly curious about how to write better content, and asked ALL the questions! I felt like I was learning, contributing, and engaging with the dev community in some manner, and it felt like I won the jackpot. ๐Ÿฅณ There was no longer any doubt. There was no question that this is where I was meant to be. I knew what it felt like to be respected at my job. I knew what it felt like to contribute something meaningful to my projects. (Side note: _From the bottom of my heart, I hope you've celebrated your wins, and experienced this type of enthusiasm and growth in your career. If you haven't yet, don't worry - it'll come._ โค๏ธ ) ๐Ÿ—บ  Where am I now? After eight months in the apprentice program, I'm happy to write that I'll be starting my permanent full-time role as a Community Engineer ๐Ÿ’ป  at StackBlitz. This role will allow me to continue engaging with the community, and leading internal and external projects to improve the community's experience. This role encompasses tasks along the DevRel side that make me even more excited to be a part of this community. Like This Dot, StackBlitz has welcomed me with open arms, and I'm so excited to work with a great team. ๐Ÿ… ๐Ÿ“  Tips I learned 1. Be Explicit ๐Ÿ—ฃ Nothing can harm a project or team more than ambiguity. Ambiguity can cause misunderstandings in objectives, delays in progress, and miscommunication in your team. Especially when you're starting out, be explicit in the support you need. Be explicit when you're outlining the work you're doing. When you're talking to your manager or mentor about professional goals, be explicit about what you want! Remember, we are not mind readers. ๐Ÿ˜Š 2. Find Your A-Team ๐Ÿ“ฃ There's no cookie-cutter outline in what this looks like. It all depends on what YOU need! Find a group of people who truly support you, whether it's your manager, a coworker, or a mentor outside of your company. Find the people who will celebrate your wins as their own. Find the people who won't be afraid to call you out when you're in the wrong. Find people who are invested in your growth just as much as you are. ๐ŸŒฑ 3. Get Out of Your Head ๐Ÿง  When we're too inside of our heads, we may unintentionally inflate situations that make it harder to construct realistic resolutions. I find it so helpful (and therapeutic ๐Ÿ’†๐Ÿปโ€โ™€๏ธ  ) to write things out. Whether it's in my physical bullet journal, Notion, a sticky note, or just talking to someone - Getting the thoughts out of my head allowed me to understand the situation at hand, and outline what I needed to do next. Our minds are prime real estate ๐Ÿ   so choose wisely what you allow to live rent-free. ๐Ÿ˜‰ (Admittedly, I allow this dog to live rent-free because he's so stinking adorable. ๐Ÿถ  ) 4. Show Empathy & Be Compassionate ๐Ÿค— These can be shown in big or small ways, and every bit matters. Sometimes that can be adding resilient tests, and writing code that other developers can easily understand and maintain. Sometimes, that can be contributing well-written documentation that's accessible to your user community. And sometimes it can look like asking someone how their day has been. My favorite way of doing this is celebrating wins, and giving kudos to others because when one of us wins, we all win. ๐ŸŽ‰  We're humans, not machines! ๐Ÿค–  So let's treat each other as such. ๐Ÿ’œ ๐ŸŽฌ  Conclusion I know this was a lengthy read, and I appreciate you taking the time to read about my journey! I'm very fortunate to have found people who support me and to be in a position to acknowledge my growth. I encourage "Code Newbies" to consider an apprenticeship as part of their developer journey. Kudos to This Dot for their evolving apprentice program, and a big "thank you" to StackBlitz for allowing me to continue my tech journey with them! ๐Ÿš™...

#StateOfAutomation - Simple Solutions for Complex Problems cover image

#StateOfAutomation - Simple Solutions for Complex Problems

๐Ÿค”  What in the world is Automation? ๐Ÿ˜ฑ  How can we utilize automation to improve our developer experience and productivity? ๐Ÿคฏ  Is it possible to over-engineer automation? If you or your team have ever asked these questions, come dive into some of the talking points discussed at Modern Web's State of Automation event. In this article, I will review some of the major points brought up during this conversation, hosted by Tracy Lee (@ladyleet) and Matthew Pagan (@mastapegs) of This Dot Labs. Let's meet our panelists, and hear about what their teams have been working on! ๐Ÿ‘ฉโ€๐Ÿ’ป  Alison Dowdney (@alisondowdney) Developer Advocate from Weaveworks - Weaveworks dropped an early release of Weave Gitops Core, a tool thatโ€™s backed by Flux, an open-source tool backed by CNCF (Cloud Native Computing Foundation). ๐Ÿง‘โ€๐Ÿ’ป  Taylor Dolezal (@onlydole) Senior Developer Advocate from HashiCorp - Terraform, an open-source code software tool that enables you to safely create, change, and improve infrastructure, just hit 1.0 earlier this month! - Waypoint went to 0.4, which includes mutable deployments and makes it easier to work with Kubernetes. ๐Ÿง‘โ€๐Ÿ’ป  Zan Markan (@zmarkan) Developer Advocate from CircleCI - CircleCI has acquired Vamp, a release orchestration tool. - Theyโ€™ve also released new features like enhanced ARM support, as well as Dynamic Config, which allows users to use jobs and workflows to not only execute the work, but determine the work they want to run. ๐Ÿ‘ฉโ€๐Ÿ’ป  Tracy Miranda (@tracymiranda) Executive Director from Continuous Delivery Foundation - Continuous Delivery Foundation hosted cdCon, which supports the tech community by helping organizations focused on tackling the diversity and inclusion gap. ๐Ÿ”‘  Key Takeaway Points - As we work through the pandemic, and see all the workplace and cultural changes happening, we see that people are really prioritizing automation to help with distributed work and burnout. ๐Ÿ”ฅ - Concepts and platforms such as GitOps and Kubernetes Projects have helped us expand automation outside of the coding realm for tasks such as simplifying the interaction between communities. - Automation helps with the technical aspect of our workflows, but it might not necessarily solve human or process problems in an organization. - It _is_ possible to over-engineer automation! Maintainability is so important to keep in mind to make sure we've created a sustainable workflow for our future teams. - And no, Jenkins is not dead. Far from it. ๐Ÿ˜‰ ๐Ÿง   Resource Recommendations - ๐Ÿ“š  Accelerate by Nicole Forsgren, PhD, Jez Humble, and Gene Kim - ๐Ÿ“š  Working in Public: The Making and Maintenance of Open Source Software by Nadia Eghbal - ๐Ÿ’ป  Perspective API: Free API that uses machine learning to help mitigate toxicity and ensure healthy dialogue online. - ๐Ÿ’ป  kind: Tool for running local Kubernetes clusters using Docker container โ€œnodesโ€. ๐Ÿ™‹โ€โ™€๏ธ  Have any questions or points to share? Use #StateOfAutomation on Twitter and talk with us! ๐Ÿ“บ  View the replay here for fun stories, great tips, and faces to names! ๐Ÿค...