Core Values

What Are Core Values and Why?

When work occupies over 30 hours of my week, it’s crucial to identify the environment and working style that align with my goals and bring fulfillment to my daily tasks. Core values are my personal compass—they guide how I approach my work and interact as a professional engineer. These values also represent a commitment to the standards I uphold in my career. While they may evolve with time and experience, they serve as a foundation for how I navigate challenges and opportunities today. Currently, I have identified four key values that matter most to me: Evolution, Interactive Development, Communication, and Flexibility. Each of these plays a critical role in fostering a productive, collaborative, and forward-thinking work environment. In essence, I am seeking roles that provide: A flexible working environment that respects work-life balance. A team that embraces exploration of alternative solutions and innovation. Open and transparent collaboration. An interactive, feedback-driven approach to development. In the sections below, I’ll explain why these values matter and how they shape my work ethic and professional expectations.

Evolution

Continuous Growth Through Learning and Adaptation

Throughout my career, I’ve experienced diverse situations that have shaped my understanding of software development and the importance of evolution. Early in my career, I built a software system from scratch without clear guidance or collaboration. The result was a poorly documented and overly complex system—a “monster” of inefficiency. This taught me the dangers of making isolated decisions without strategic planning or documentation. In my next project, I worked on maintaining and integrating configurations into a legacy system. It was challenging to clean up and refactor code without a structured approach or a clear plan. Lacking experience, I endured these difficulties in silence, which only prolonged inefficiency and frustration. Later, I had the opportunity to work on a greenfield system with a mature team. Here, I learned critical skills like automated testing, Docker, and CI/CD. The team’s self-managed approach allowed us to prioritize features, allocate time for system cleanup, and deploy on our terms. This experience exemplified the power of evolution—adopting processes and tools that improve outcomes and collaboration. In my next project, I applied these lessons while working on a system for a startup. This project serves as a prime example of what “Evolution” means in action, explained below in STAR format.

Situation

I joined the team working on a full-stack system with no automated tests, relying solely on manual testing. The high rate of QA rejections (~50%) highlighted the fragility of the system.

Task

I was tasked with implementing internationalization (i18n) across the system. Recognizing this as an opportunity to introduce automated tests, I proposed addressing the lack of test coverage alongside the i18n implementation to ensure stability and prevent regressions.

Action

I collaborated with teammates to establish a testing approach. After researching best practices, we decided to implement both translations and automated tests simultaneously. Using Cypress and Jest, we covered each page and API endpoint while progressively rolling out i18n.

Result

The project successfully delivered an i18n-enabled website with comprehensive automated test coverage for both frontend and backend components. This significantly reduced QA rejections and established a solid foundation for future development. It also empowered junior developers to experiment safely, as tests provided immediate feedback on potential errors.

From this experience, I’ve learned the importance of incorporating “engineering time” into project planning—dedicated periods for experimentation, research, and identifying opportunities for evolution. A small investment, such as one day in a two-week sprint, can lead to significant long-term improvements.

Interactive

Collaborating and Iterating for Smarter Development

In my career, I’ve worked across various project management styles, including Waterfall, Kanban, Scrum, and even solo unsupervised projects. Each experience has shaped my understanding of effective collaboration and iterative development. On my first project, I worked in an unsupervised environment, handling everything from design to development and requirement gathering for a greenfield project. While this was a valuable opportunity to establish processes and practices, I lacked the knowledge and experience to do so effectively. The result was confusion and uncertainty about how to improve the situation. My second project introduced me to the Kanban style, which provided much-needed visibility into tasks, priorities, and progress. While it was an improvement, I found it lacked long-term planning and future visibility, as my role mainly involved fixing bugs and configuring an existing system. On my third project, I joined a mature Scrum team. This experience transformed my perspective on project management. We collaboratively planned, estimated, and split tasks while maintaining a clear definition of done. Regular demos and discussions with the product owner kept everyone aligned. Features were deployed continuously as they were completed, fostering a flexible and iterative approach. From these experiences, I’ve grown to appreciate Scrum-style management for its predictability, team collaboration, and encouragement of phased, multi-deployment feature development. This approach also enables a data-driven mindset—tracking feature usage and making informed decisions about product direction based on user behavior. Interactive development is not just about delivering features but about fostering collaboration, maintaining adaptability, and using feedback to guide the project’s evolution.

Communication

Breaking Barriers with Clear and Responsive Communication

When I migrated to the United Kingdom, overcoming the language barrier became my top priority, as English is my second language. I initially struggled to explain or understand complex concepts, especially during long conversations where maintaining focus was challenging. To address this, I adopted a proactive approach. When unsure whether my message was understood, I would explain in greater detail to ensure clarity. Similarly, when I was uncertain about my own understanding, I would repeat my interpretation in my own words, seeking confirmation. This method proved effective, as it allowed me to validate my understanding and provide feedback where necessary. However, communication is a two-way process. My approach, while thorough, sometimes led to overcommunication, where I would overexplain in an attempt to ensure crystal clarity. To improve efficiency, I rely on responsive teammates who can quickly confirm their understanding or provide feedback. This responsiveness cuts unnecessary repetition and fosters a more streamlined and productive dialogue. Clear communication is about balancing detail with efficiency. It requires active listening, mutual confirmation, and the willingness to adjust based on team dynamics.

Flexible

Finding Balance Through Flexible Work Configurations

During the pandemic, I experienced different work configurations that reshaped my perspective on flexibility. Initially, most of my roles were fully on-site. While this setup fostered close-knit team dynamics and constructive feedback through constant interaction, it also came with significant drawbacks. The daily commute, sometimes exceeding three hours, disrupted the balance between personal and professional life. When the pandemic introduced hybrid working configurations, I experienced a better balance. Spending a few days in the office ensured effective communication during activities like planning and demos, while working from home provided focused time for individual tasks and greater flexibility in managing my schedule. After immigrating to the United Kingdom, I worked in a predominantly remote role while my teammates followed a hybrid model. This setup presented challenges, especially during discussions about implementation details or feature scopes. Being the only remote participant often left me excluded from spontaneous conversations, limiting my ability to contribute to decisions. This experience highlighted the importance of inclusive communication in flexible arrangements. Based on these experiences, my preferred working configuration is hybrid. It enables effective in-person collaboration, focused development from home, and the flexibility to allocate time between personal and professional priorities. A balanced hybrid model offers the adaptability needed for modern work environments.