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

Set up a web server for learning HTTP headers

Motivation We all follow the client-server model using the HTTP protocol for most of our web apps today. In development, we simply may have a backend API server and a frontend (web pages or mobile apps) only. However, it seemed that a proxy server is always required for production. In fact, most of the hardest issues in production come from integration. The requests and responses might be modified by the proxy server. Therefore, the understanding of HTTP protocol is one of the key skills to resolve those issues. I wanted to dive deep into HTTP with some core concepts such as caching, cookies, and CORS. I didn't intend to go quickly rather than moved slowly to have a well understanding of what I do. Prepare a server The easiest way is to use my laptop as a server then I can just use "localhost". I can also use ngrok to make my web server online. Finally, I use an online tool such as RedBot to check the HTTP headers. To make it more excited though, I deployed the app on A...

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 ...

How I did customize "rasa-nlu-trainer" as my own tool

Check out my implementation here Background I wanted to have a tool for human beings to classify intents and extract entities of texts which were obtained from a raw dataset such as Rocket.chat's conversation, Maluuba Frames or  here . Then, the output (labeled texts) could be consumed by an NLU tool such as Rasa NLU. rasa-nlu-trainer was a potential one which I didn't need to build an app from scratch. However, I needed to add more of my own features to fulfill my needs. They were: 1. Loading/displaying raw texts stored by a database such as MongoDB 2. Manually labeling intents and entities for the loaded texts 3. Persisting labeled texts into the database I firstly did look up what rasa-nlu-trainer 's technologies were used in order to see how to implement my mentioned features. At first glance rasa-nlu-trainer was bootstrapped with Create React App. Create React App is a tool to create a React app with no build configuration, as it said. This too...

Awareness of Product Development

Software development can be understood simply as a program to receive inputs (i.e customer needs) and then produce outputs (i.e working software). It is worth it to know how many steps are in that program. When something gets stuck in a step, everyone is aware of that. The first painting of my son The General Process Big Picture There are two main factors in this picture including the people with roles and their interactions. All people involved in developing the product know their responsibilities clearly and how to make things done right. Therefore, a good collaboration can be reached. Product Roadmap Contribution It would be great for developers to know what the next features to work on are as well as when those features will be delivered. Therefore, the product roadmap is very important. The items in the roadmap should be contributed by ALL people involved in the product. Because software engineers directly develop, test, delivery, and monitor the software, they should also contrib...

Solving your data visualization needs with open source reporting

Most of applications have some types of data visualization needs: - Gather the data. - Perform calculation, sort, group, aggregate, total,.. - Present information professionally. and meeting user demand is crucial to the success of an application. To solve this problem, there are some different approaches: - Buy a closed-source commercial product (for example, Crystal Reports, JReport,..), we must to pay for a lot of features but maybe more of features we don't need. - Build a custom-developed solution, so we need a team to develop our solution but the problem is how much time and money that we need to spend for that. Nowaday, open source creates new choices. Firstly, we can leverage open source in a customer solution by plug-in it to our solution. Secondly, we can build open-source-based products by using open source code. There are many open source reporting tools for use in the enterprise such as BIRT, iReport, JasperReports,... In this post, I wou...