Skip to main content

A User Guide To Working With Huong

 

Introduction

I write this user guide to help us (you and me) have a good collaboration at work. I hope you also share yours.

How I view success

  • We all feel passionate and happy at work.

  • We all enjoy discussing transparently.

  • We take it easy to give and receive feedback.

  • After all, we together develop and bring valuable applications to users.

How I communicate

  • I mostly prefer a face-to-face conversation.

  • Just leave me a message on Slack if you don't want to come to my desk.

  • For a big topic which takes more than 30 minutes, we should have a meeting.

  • Only send me emails only if stuff is very formal or out-of-office hours

Things I do that may annoy you

  • I do practice the Pomodoro technique so that sometimes you see me in the "do not disturb" mode.

  • Often to make things clear, I am at ease talking frankly with you.

What gains and loses my trust

  • It is easy to gain my trust when you commit to what you say. You show your passion and endeavors to achieve that.

  • It is easy to lose my trust when you don't focus on your work. You affirm what you haven’t experienced. For instance, you have never tested your implementation on the servers but you say you have done it.

My strengths

  • I know a good product is built by a well-collaborated team. I do care about teamwork.

  • My passion is to bring valuable products to users. I do care about both the technical and business of applications.

  • I motivate myself to expand my skill set every day to make better applications. I am a fast learner and my skills are wide.

  • I adopt the grit mindset. I believe I can solve most of the problems with my perseverance.

My growth areas

  • Development skills (Backend and Frontend)

    • After graduation, I began building enterprise web applications using Java as a primary programming language. For most of the projects, I used the JSF framework and Axon.ivy platform. I had nearly 5 years of experience in this field.

    • Currently, I am using JavaScript as my primary programming language. I enjoyed reading You Don’t Know JS.

    • In my spare time, I am also learning Android to develop my side projects.

  • Operation skills (DevOps)

    • I gained some fundamental knowledge about Computer Networks and Telecommunications such as operating systems, IP addresses, and security in the university as it is my major.

    • I have been working with some tools: Jenkins, Docker, OpenShift, AWS.

  • Soft skills:

    • I keep learning English for a good communication skill

    • I work together, observe, and grow my teammates to enhance my leadership skill.

    • I follow Buddhism (especially Zen/Thiền) as my philosophy. I believe everything in this world is connected. I no longer struggle to answer the kind of questions “Who am I? Why am I here?”. Some of my best friends are atheists, Protestants, and Catholics; we all feel happy when talking about our own beliefs.

  • Computer science

    • Architectural design: from the level of code to systems.

    • In my spare time, I enjoy spending time with some friends to take research and build side projects using facial technology (a field in Computer Vision).

    • Cryptography is also my interest. Currently, I also spend some time to build a pet called FIDO2 Authenticator.


References:

https://lg.substack.com/p/the-looking-glass-a-user-guide-to

https://roadmap.sh/

https://github.com/devradar/devradar

Comments

Popular posts from this blog

What the heck is Meteor DDP?

I was using Meteor for my messenger project. I was so curious about the real time connection. I wanted to know how exactly this mechanism works. In this post, I will go through the DDP Specification, an overview of WebSocket, and a simple demo about how to subscribe a publication of Rocket.Chat (containing a DDP server) from an external webpage. At a glance, I knew that Meteor invented a protocol called DDP which uses for handling real time connection. So then, what is DDP? "DDP (Distributed Data Protocol) is the stateful WebSocket protocol that Meteor uses to communicate between the client and the server." [1] All right! Why does DDP matter? "DDP is a standard way to solve the biggest problem facing client-side JavaScript developers: querying a server-side database, sending the results down to the client, and then pushing changes to the client whenever anything changes in the database" . [2] In order to understand deeply the protocol, I decided ...

Strategy Design Pattern

For example, I have a program with an Animal abstract class and two sub-classes Dog and Bird. I want to add new behavior for the class Animal, this is "fly".  Now, I face two approaches to solve this issue: 1. Adding an abstract method "fly" into the class Animal. Then, I force the sub-classes should be implemented this method, something like: public abstract class Animal{ //bla bla public abstract void fly(); } public class Bird extends Animal{ //bla bla public void fly(){ System.out.println("Fly high"); } } public class Dog extends Animal{ //bla bla public void fly(){ System.out.println("Cant fly"); } } 2. Creating an interface with method "fly" inside. The same issue to an abstract class, I force the classes these implement this interface should have a method "fly" inside: public interface Flyable{ public void fly(); } public class Bird implements Flyable{ //bla bla public void fly(){ System.out.pr...

Journal: This Month I Learned (2022-Nov)

This Month I Learned posts are aimed to share what I have learned during the month such as my thoughts, recommend resources, tips, how-to, and so on. Vung Tau beach Engineering Levels I conducted a lot of meetings with HRM to define the standards for evaluation criteria, career path ladder, Personal Appraisal (PA) processes, and onboarding/offboarding processes. I knew more about the expectation from an HRM perspective for engineering levels evaluation criteria. For example Define many enough titles for a long career path development Define general criteria for each level How to calculate score when evaluation with weight matrix applied Anticipate risks before executing a process Team Engineering Lead Organization I collected ideas from different people When having no dedicated leader, every member of the team has a fairly chance to practice leadership skills Scalability strategy: development teams’ size, and new position nomination. Security Awareness Training I conducted this sharing...

DevOps Toolchain Enhancement

 Historically, our company ubitec had started with a customer project. Agile/Scrum was our proposal for working with customers. Time by time, Agile/Scrum also became our culture for software development. To be successful with this development approach, we somehow needed to have a fast release for customers (i.e. every one week). Back then, we had a build tool Jenkins which was responsible for having sprint release packages for our customers. The build job pipelines contain some steps such as gathering the artifacts, checking the code convention, running the tests, building docker images, and packaging an archived file (a zip file). The set of tools involved in a pipeline is roughly called a toolchain. It is just a part of a bigger process called the DevOps toolchain. Source: https://www.ibm.com/blogs/cloud-archive/2016/11/devops-architecture-available-on-bluemix-garage-method-site/ DevOps is a proven method that fits Agile. Today,  it is even treated as a mandatory factor...

Validate date with Datejs

Datejs is an open source JavaScript Date library for parsing, formatting and processing. Website: http://www.datejs.com function isValid(date, pattern){ if(pattern == null){ return false; } var parseExact = Date.pareExact(date, pattern); if(parseExact !== null){ return true; } return false; } Another popular date library is Moment.js