VTS Insight: A Chat with Si Dang, our software engineer
Today we will have an interview with Si Dang to learn more about his experience working at VTS and tips that he can share to people who want to join VTS and build a stronger Vietnamese tech community
Hi Si, we are glad to have you here today with us.
First off, why did you decide to join VTS?
I decided to join VTS, a non-profit organization, due to the inspiring impact it has in the community and its commitment to making a difference. In 2020, I had the privilege of taking a SQL summer class taught by Hien Le, who is now the Founder of VTS. His dedication to education and technology left a lasting impression on me. Then, in 2021, a close friend of mine, who was already involved with VTS, approached me with an opportunity to join the team. Learning about the organization's mission to empower individuals through education and mentorship resonated with my own values. When I discovered that Hien Le was the Founder of VTS, it reinforced my belief in the organization's vision and purpose. As a software engineer, I saw a chance to contribute my skills and expertise to support the organization's goals. Moreover, the opportunity to serve as a mentor on the platform, sharing career and interview advice based on my own experiences, was something I was passionate about. Joining VTS presented a unique chance to be part of a compassionate community that empowers others through education, mentorship, and technology-driven solutions. I am truly excited to be part of this meaningful journey with VTS and contribute to creating a positive impact in the lives of many.
What are some of the projects that you have worked on at VTS? What are the main technologies or tools that you use?
During my time at VTS, which spanned over a year and began just before the platform's beta release, I worked on several exciting projects as a backend engineer. One of the key projects I contributed to involved managing the profile pages. I focused on backend development and database management, specifically working on migrating from using random strings for user URLs to allowing users to choose their own custom URLs. This enhancement streamlined user data management and greatly improved user experience, making the platform more user-friendly.
Throughout my journey at VTS, I had the opportunity to work with various technologies and tools that were entirely new to me. As a non web developer, I was exposed to frameworks and languages I had never touched, studied, or worked with before. While ReactJs is widely popular in web development, my primary focus remained on C# .NET, which I was more familiar with. Despite the learning curve, I was fortunate to collaborate with passionate software engineers who generously shared their expertise. Thanks to their guidance and support, I quickly adapted to the new technologies and successfully delivered tasks within the designated timelines.
What is the most challenging engineering project you have worked on at VTS? How did you approach it and what was the outcome?
The most challenging engineering project I worked on at VTS was building the platform from scratch. Every feature we developed presented a new set of challenges, and we had to rely on our problem-solving skills and resourcefulness to find solutions. We became adept at searching for answers and learning independently, which empowered us as active and self-reliant developers.
One particular challenging moment that stands out was when we encountered a hidden runtime bug that caused the system to crash unexpectedly. In response, we quickly conducted a thorough investigation, using logs and debugging techniques to identify the root cause. Our team collaborated closely, and we were able to rectify the issue swiftly, preventing further disruptions to the platform.
However, this experience also highlighted areas where we could improve. We lacked a robust testing method, and the codebase wasn't as organized as we would have liked. This realization prompted us to reevaluate our development practices and establish a more comprehensive testing framework to prevent future occurrences of similar issues. Additionally, we focused on codebase organization, implementing best practices to make it more maintainable and scalable.
Despite the challenges, this project was a significant learning opportunity. It taught us the importance of continuous improvement and adaptability in a fast-paced development environment. The experiences we gained during this project not only enhanced our technical skills but also instilled in us a deeper understanding of the value of structured development processes. As a result, we became better equipped to build a stable and efficient platform that caters to our users' needs effectively.
What are some of the engineering skills or knowledge that you have learned from your teammates? How do you share your expertise with others?
Working alongside passionate and experienced colleagues, I gained valuable insights into software architecture, design patterns, and best practices in software development. They introduced me to new technologies and tools, such as ReactJS and frontend development, expanding my expertise beyond my primary focus on C# .NET.
Furthermore, I contribute to knowledge-sharing initiatives within the team. Through regular team meetings and code reviews, I encourage open discussions and collaboration. I actively participate in knowledge-sharing sessions where team members present and discuss their projects, discoveries, and lessons learned. This fosters a culture of continuous learning and ensures that the entire team benefits from each other's expertise.
I firmly believe in the power of knowledge sharing and continuous learning. By learning from my teammates and sharing my expertise with others, I contribute to a culture of collaboration and mutual growth, both within the organization and the broader tech community.
How do you mentor or coach other engineers in your team or across the company? What are some of the feedback or outcomes that you have received or observed?
As a software engineer at VTS, I mentor and coach other engineers in my team and across the organization through various methods. I actively participate in code reviews, providing constructive feedback to help my colleagues improve their coding practices and learn from different approaches. I also engage in pair programming sessions, where I guide others through challenging tasks and share insights on best practices.
The feedback and outcomes from my mentoring efforts have been positive. My colleagues have expressed appreciation for the guidance and support, and I've observed significant improvements in their technical skills and problem-solving abilities. Through mentorship, I've witnessed junior engineers gaining confidence in tackling complex projects and contributing meaningfully to the team's success.
What are some of the goals or aspirations that you have as a software engineer? How do you plan to achieve them or pursue them?
As a software engineer, I have several goals and aspirations that drive my career and personal development:
Contribution to the Community: I want to make a positive impact on the software engineering community by sharing my knowledge and experiences. I aim to achieve this by writing technical blogs, and actively engaging in online forums to help others with their coding challenges.
Mastery of Technology: I aim to become a true expert in my chosen technology stack, continuously deepening my knowledge and understanding of programming languages, frameworks, and tools. I plan to achieve this by taking on challenging projects, engaging in self-learning through online courses and books, and actively seeking mentorship and guidance from experienced engineers.
Leadership and Mentorship: I aspire to grow into a leadership role, where I can not only contribute technically but also inspire and mentor others. I plan to achieve this by seeking opportunities to lead projects, taking on responsibilities beyond coding, and actively mentoring junior engineers in my team.
What is the most valuable thing you learn during your time working at VTS? How does it help your journey and your career path?
Working at VTS would likely provide valuable insights into the industry, business operations, and collaboration within a team. I would say the industry expertise would be the most valuable thing I learnt here. By understanding the dynamics of the edu-tech field VTS operates in, I can sharpen both my problem solving skills and how to collaborate effectively within cross-functional team to deliver the highest output for the team.
One last question, what is your fondest memory working here at VTS? If you need to convince a friend to join VTS, what would you say to them?
One of my fondest memories while working at VTS was the unique experience of collaborating with a global team. Our team was composed of talented individuals from various parts of the world, spanning different time zones and locations. Despite the challenges of coordinating across these diverse time differences, it was an incredibly rewarding and enjoyable experience.
Being in the Pacific time zone, I often found myself attending meetings in the comfort of my bed, while some of my teammates had already begun their workday several hours ahead. The camaraderie and sense of unity within the team were remarkable. Everyone was extremely helpful, friendly, and understanding, making the distance and time zones feel inconsequential.
If you're looking for a meaningful and rewarding experience in the tech industry, I highly recommend joining VTS. As a non-profit organization, VTS plays a crucial role in connecting mentors and mentees, fostering a supportive and empowering community within the tech field. By becoming a part of VTS, you'll have the opportunity to make a real difference in the lives of aspiring tech professionals and help shape the future of the industry. The chance to mentor and guide others while continuing to learn and grow yourself is incredibly fulfilling. The sense of camaraderie and the satisfaction of seeing mentees succeed is unlike any other. Joining VTS is not just about career development; it's about being part of a larger mission to create a stronger, more inclusive tech community. If you're passionate about making a positive impact and shaping the next generation of tech leaders, VTS is the place for you.