Monday, December 18, 2017

Chats, Beers and Tech - Meeting Michael Zee

A one time chance to meet someone who's been on the grounds of Silicon Valley and who've witnessed how companies grow and die -- is a very rare opportunity. This man is not your ordinary man, he's more to what is written on the web. A truly amazing humble individual.

Hours after he landed in Davao City, Philippines -- Michael Zee, "Mike Zee" as we call him, headed down to our Office to see how things are going. Gathered in a room that almost doesn't fit everyone from engineering and marketing, Mike Zee never wasted time and directly talked about his experiences and his personal story with Onerent. A brief yet, very concise introduction about himself and what he does in the past years.

So what do we know about Mike Zee?
  • He served as the Top Legal Adviser at Google
  • He was one to the first hire employee at Google
  • He was the one who setup Google's APAC HQ
  • He stayed in Japan for about six years

There's too much to tell but I'll leave it to those who were in the room.

Dinner time, we grab food and drinks from a native local restaurant "Belitos".  Where Mike really appreciate we bought him there rather than bringing him to a fancy class resto.

While enjoying the food and beer, we get the chance to know more about Mike Zee, giving everyone the opportunity to throw questions at him -- answering each to the extent of explaining his perspective the way he can be understood.

So what do we know more about Mike Zee?
  • He believes Bitcoin will somehow be widely accepted in the society
  • He's more into simplicity and deliverance (product-specific)
  • He loves whiskey

There's too much to add but I'll leave it to those who were in the banquet.

The next morning, we don't want Mike Zee to miss the action! We want him to feel the hustle! The energy we always share in the operations...

With a complete lineup of our operations people, we've welcomed Mike Zee's second day in the Philippines with a blast.

Mike, then again, giving everyone the opportunity to hear what he's looking forward and expectations of Onerent in the next years fold -- straight from him. The moment, when people gets motivated and inspired to double the effort and help the company reach the goals!

There's no better way to end the Philippine experience other than tasting our very mouthwatering dishes. Foods everywhere! Cheers to more years of great service! And thank you, Michael Zee!

I asked Mike Zee, "What's your value in life?". And he heartily responded, "You always need to pay it forward", he said "always give back".

Monday, December 4, 2017

Growing An Elite Unit - An Inhouse Devhouse

For the times I've been in Onerent and being one of the first hire engineers in their Philippine office, I have witnessed and took part of how the company grows an impressive engineering squad.

From an initial count of four engineers, composing -- (1) Front-end, (2) Back-end and a DevOps Engineer, we've now grown to 14 hungry and passionate tinkers and is now being categorized as front-end team, back-end team, sales-force team and data-ops team.

Hiring the right people is tough, having the wrong person on-board is a total mess. We rather wait as we filter out the good apple from the bad. And just like other companies, we always apply our standards in whatever we do.

What I see vital in our filtering process is the section where three or four engineers including the CTO himself team-up to roll-out a sequence of interviews for the applicant. Onerent's in-house term for this is the "carousel".

So what happens in the carousel?
You'll have the chance to talk to any of the 14 hungry and passionate tinkers, discussing things you thought you knew and the things you love to hear more about. Most likely, the interview is mainly focused on skills and practices -- depends on what position you're applying for. It'll be a series of interviews and at the end -- there will be deliberation.

Once theory is being gauged, we give every applicant the chance to prove their skills in programming. This is the reason why we give them a take-home coding challenge. We believe that passionate people starts the work without the involvement of money. We believe that the right people will always showoff their skills in ways that they want to showcase what needs to be delivered (in a timely manner). We believe that dedication will drive the individual to complete the assignment.

Before anyone gets hired, we're already giving them the chance to shine.

Another strong point, I am very proud of is the way Onerent selects the leaders of each team. From my personal perspective, people get appointed not because they are tenured on the job but they are well knowledgeable of the craft. As the saying goes "It's not the number of years of experience but the number of quality years of experience that counts". So people who step-up and master the scope gets rewarded in the run.

As I already mentioned, the company is very supportive and is into investing in their people. While everyone is given the privilege to approach anyone within the engineering department (and other departments), we still love doing meetings. Allocating time to gather the talent needed to accomplish the task and make sure things are covered in a timely manner. We embrace brief talk, but we enjoy more when we dig into something and discover more of the things we don't know yet.

Freedom and freewill are well observed within the team. If you have an idea and want to make it as a standard in the operation -- the only thing you need to do is convince everyone how it affects and enhances "whatever" in the current process. There's no one-size-fits-all rule that covers everything that we do inside the engineering realm. Everyone is always welcome to challenge and enhance the current system (might it be referring to the processes, implementations, guidelines, policies and etc.).

We like to give emphasis that Onerent is a data-driven company. For that, people in the engineering department is always up to the numbers. It's lame but at the same time -- true, that "numbers don't lie". At the end of the day, people's reasoning will always boil down to data and for that reason, conversations and discussion are very objective-specific. Points are well taken and action plans are made right after every engagement.

Growing an elite unit is hard but once you get the right people with the right attitude, things fold according to your plans. An even more sophisticated product to giveout to the world.

Join us! We still need more hands to help us craft our amazing platform!

Thursday, October 5, 2017

What I Find Hard In Doing Data Science Work - Survival Guide (Part 1.1)

Data Science is broad and it turns out that the hardest part in doing data science work is "data mining".

While you scrape and collect data from different sources, you need to determine which source holds the "source of truth" so the basis of your hypothetical theory is easily identified. While this is common to decision making, it turns out that this is not always true in data science.

What I realize in collecting data is that a source is just another point of failure. The bigger your scope, the more sources you have, the more discrepancy you'll have -- the more cross-checking you need to perform.
To make data actionable, it needs to be accessible, accurate and standardized.
Seeking for the correct values, one needs to figure out the "why" when inputs and outputs are shown right next to each other. While people rely on human intellect in performing judgments, where bias and error are at the 90% marginal rate -- in data science, you can't afford to be wrong. On the other hand, you can't afford not to know. And that's the reason why the data being collected should be reliable.

Types of data:
Data is everywhere. However, if we categorize the data into neutralization (aka form), it all boils down to two types. 

While you thought, that the one you should be paying attention to is towards "data you need", think again...

Some scenarios and cases don't give you the ability to nail down the data you are in need. So you're left with no option other than to create and generate it.

Extracting data is easy, generating data is complex.

Personal Experience:
While generating data is very rewarding, the story doesn't end there. Most common problem with data is "sorting" particularly "parsing". I don't have any good knowledge about excel sheets and other tools. Luckily, my bash skills can address most of the things I need.

If you have experience in sed, awk and regex -- you should be good.
Science is limited by data, Data is limited by Engineering
All set of tools are welcome, however, the main concern in executing the task will always be efficiency. Don't feel bad if you don't know how to do things in other ways (ie. like parsing data on excel sheets), instead, stick to what you know best and works.

Sunday, October 1, 2017

A Devops Engineer Inside The World of Data Science - Survival Guide (Part 1)

Recently, I was tasked by the CTO to help the Operations department be more efficient and self-sustaining in their day-to-day routine. It was said that the only way to dig what and where the problem is through checking the messy gold mines (aka data) where details are disclosed and kept.

For someone who doesn't have any background in data science and big data, I wasn't sure if I could deliver the needs on time and accurately. While at the back of my mind, there is this voice that says "take it and explore". So the troll face in me says "challenge accepted".
What is fascinating about startup is, you can be anyone! Wearing many hats is a privilege and it's always good to have a taste of everything...
Before jumping into the waters of data science, the main thing I was up to -- is to know the fundamentals of it. I am not only after the formulation but the logic on how "factors" and "components" affect your formulation. The foundation I am trying to build is from the thinking "When does data make sense?"

My strategy for this role would be:
  • Research - about the tools, practices and know-hows
  • Design Thinking - conceptualization, formulation and composition
  • Delivery - reporting, analysis and dashboards
NOTE: The catch about data science is that, you're solving a problem that was either asked or never thought existed. It's always the underlying message, that you're after for.
The task was given to me Friday, prior to ending the shift. Not wasting any of my time, I made sure weekends are well spent and my Monday shift is all set.

This writeup doesn't give you the complete comprehensive guide to being a data scientist, rather gives you a good kickstart in taking your baby steps towards being one.

The main catch I was able to grasp is "visualization". Structured data is nonsense when it doesn't tell you a story on the first glimpse. That's the reason why people create and construct a great dashboard that explains it all.
When your work talks for itself, don't interrupt.
Since the early web, people love to do reporting with graphs and images to represent a body of information. As we evolve to modernization, the type of reporting also adapts the innovation. Dashboard plays a great role in reporting nowadays. Not only for analytics but also for user-experience.

As I deep dive into the topic of "dashboards", here are the pointers I noted from different articles and podcasts I've gone through.

Organizing Dashboard:
There are studies that prove that some dashboard are not cool as it looks like. Smart dashboards are what we are after for, thus, knowing what a bad dashboard is vital as we go along our research.

This is my personal structure of what a good dashboard looks like. Labelled based on "emphasis" and how people will look at it.

In creating dashboards that people will love to look at, using the right color scheme is a thing that should be observed. You need to be aware that not everyone who will be looking at your graph sheets and data details is not on a 100% visual state.

Choosing the right color, font and highlights will spice up the dashboard. It makes the "important" things easier to see and be marked.

Numerical Representation:
When numbers are involved in your dashboard, you might want to consider placing identifiers on every numerical value. This way, by just simply looking at the dashboard -- users already know what is the message.

Like the image below, which do you think speaks more? The one on the left or the one on the right? Which does makes more sense?

NOTE: When a number is added into your dashboard, it doesn't represent anything. It purely states the "value" but doesn't tell you anything more. Adding a "symbol" (ie. arrow), will tell you what that number means (might it be good or bad).

Other common mistakes people think makes their dashboard cool are the following:
  • Placing useless decorations
  • Implementing crosstabs
  • Using scrollbars 

As for the tools, there are now lots of choices you can pick -- from opensource to enterprise grade. As for me, the company is subscribed to Tableau tools.

Here is some list of the software that can help you set your course.


Part 2 of this writeup will somewhat tackle about the Tableau tools usage and certain topics about data sorting, modelling and structuring. I wish you all the best for your data science career.

PS: I really appreciate how the company gives me this kind of opportunity.

Friday, September 29, 2017

The Game of Psychological Momentum

This is not a common term in relation to technology. Although this is not commonly used during technical gatherings and events, I still believe that it is best for us to expand our horizon into deeper levels by knowing other things such as this.  So I thought, why not share it?

People in the tech industry at most sacrifice sleep for something else. Might it be extending time for family, gaming, learning, thinking or perhaps doing work over-time.

I see nothing wrong about it but you'll soon notice that it affects your mental stability and performance the next day -- then, you should be worried. For most people, sacrificing sleep takes a lot of effort to do. Thus, this makes them love sleep more than anything else.

In the world of trading, time and effort are the most valuable and most expensive.

Personal Experience:
Lately, I have been practicing a four hour sleep routine. I normally spend most of my time; reading articles, practicing golang/python programming, enhancing devops skills, watching tech videos (from conferences and gatherings), listening podcast about life, business and technology. It now runs in awhile that my body was about to cope-up with the sleeping hours and waking up seems to be a muscle memory.

The main reason why I am driving myself to push on doing extra tasks day-by-day is to have advancement of my career journey. For someone who doesn't have a proper education, the last thing you want to do is to settle with the little knowledge that you currently have. Not everyone might appreciate it, but the internet is full of resources and if you have connectivity, you can learn anything you want to know, utmost free.

While the ones stated are true, I still feel that efficiency is not met within my routine. Even with a longer hours of being awake.

Some other side-effects are the following:
  • Easily triggered anger
  • Shorten patience
  • Lousy analytical skills
  • Short term memory
  • Lack of vocabulary
  • Loss sense of coordination
  • Absent minded
I realized that, just because you're up for about 20 hours does not mean that you're capable of doing work worth 20 hours.

Just Because You’re Doing A Lot More, Doesn’t Mean You’re Getting A Lot More Done. It's not how much you have, it's what you do with it. ~ Denzel Washington

Psychological Momentum:
Is an event where you are empowered to do and accomplish something. It is when you increase your productivity and performance at the same time, while observing focus on a much longer period.

Personal Plan:
Rather than planning to sleep for 4 hours and stay up for 20 hours, my new routine now would depend on the following:
(1) Do I make the day worth it?
(2) Am I feeling fulfilled?

If I am able to satisfy those questions with positive impact, then, I know.. I did well on that day!  I will not feel guilty for sleeping less to do more work or do less work to take ample rest.

Just like other games, playing without strategy will set things on fire and will only give you problems.

  • Always write your chores, this is the only way for you to easily sum-up your day.
  • Always write to-do lists, this is the best way you can prepare for tomorrow. Being organized in your day, is one good strategy.
  • Apply "priority" to your tasks, this is the best way to manage your time. Do what matters most.
  • Rest when you need it, no matter what your doing and where you're at. If you feed exhausted and drained, always go for a nap or take a break. It's important to see that if you're no longer being productive and progressive on your work, there's no point of doing it.

Personal Note:
Whenever you experience psychological momentum, put your head-phones on and don't let anyone disturb you, unless it's so important. 

Saturday, September 23, 2017

AWS Community Day 2017 (APAC) - The South Korea Experience

I was given the privilege to be part of the AWS Community Day (APAC) - 2017, which was held in Gangnam, Seoul, South Korea.

Together with other leaders from China, Thailand, Vietnam, Singapore, Japan, India and South Korea, we gathered and shared our experiences, best practices, discoveries and failures out of using Amazon Web Services.

I got lots of learning within the six hour event! And not only gain knowledge but also a new circle of friends.

Just like every other conference, people looks forward for the swags and loots. Me? I managed to get stickers and bagged it to my unit.. this serves as the mark of my presence. The "I was there!" statement.

Ofcourse, the after-math is important just like the event. A bancquet is prepared for us to share the good times and laughter. Beer fuels our guts and then, everyone starts talking..

It's a memory I will always treasure. Not just because it's my first international travel but also, the fact that I was given the chance to speak to an event like this. I mean, hey! it's AWS!

Wednesday, September 6, 2017

A Month Of Experience

Celebrating the first month of work is all worth comparing. This is the time to reflect and understand if the leap you chose has given you better accomplishments and opportunities compared with your previous company.

How's it doing for me so far?

On my first month, I established respect and efficiency at work. My colleagues knew that I do things as best as I can as long as I am knowledgeable of the task at hand. If the task requires more information of what I already know, I make sure to do a thorough research in order to come up with a better solution. Thus, this makes them trust me on stuff within my forte and trust themselves on the areas they are  good at. Of course, people want inputs and feedback and by the time they ask some from me -- I see to it that all my sources are valid before even thinking to speak. You don't want a good idea  to be taked badly just because of a mere hunch, right?

The culture we build in the office is based on the "first principle thinking", where we let everyone take part of the design process and speak up their mind. We want a high autonomousity with low risk in problem solving. Nevertheless, we want to solve a real problem than a hypothetical one. So it's vital for our design thinking process to have the following: (1) Raise the problem (2) Verify it really is a problem, either by doing research or re-produce the issue (3) Formulate the design pattern we want to use in approaching the issue, this include naming possible solution/s for the use case (4) Build Prototype (5) Test the output (6) If working, implement it. If not, re-work and enhance. Along side with the design process, we always have "postmortems" and "follow-up" meetings, this is to ensure that everyone is sync and on-track with the common goal.

Everyone in the engineering team, seems to have a common thing binding us -- and that's aiming for excellence. It's given that people in the team are tenured and utmost in the senior level. Which means, supervision is highly observed within ourselves and not by someone else. I believe in the saying "You manage machines, you lead people" and that's what is present in our team at the moment.

Leaders in the organization works hard and sets the example to everyone of us. When you're in the office, you'll feel the hustle. And if you're born with high competency, you don't want to be the one dragging down the team's performance and so -- you work your ass off.

In the fields of technicalities, I am very impressed on how we take every opportunity in testing different technologies (knowing it'll solve our problems), might it be paid or opensource. No one restricts you from doing things, the way you think is best. One caution though, you fix what you break and never break production. "Seniority comes with great responsibility" as we call it. The company even encourage employees to upgrade their skill sets by providing learning material either online courses or hard copied books. Now tell me, who doesn't want it?

Throughout the month experience I have in Onerent, I just wish I could get more people to join our elite unit and let them experience greatness in working with like-minded individuals with high standards of their work. Personally, the company has been so supportive on my advocacy in sharing my learning and experiences to the world. Thus, they are backing me up, as I speak in front of great minds this coming AWS Community Day - APAC (2017). Nothing is more fulfilling than meeting your ideal company.

If you know someone capable of impressing us, refer them and email neil[@]onerent[.]co
We guarantee he/she will love the work we have!

What interesting work do we have?
  • Transitioning to microservices and chatops approach
  • Application integration
  • API distribution (mobile version)
  • Restructuring infrastructure (operations)
  • Platform enhancement / upgraded scope of support

Friday, August 25, 2017

The Way I Hire Software Engineers and System Administrators

Worked in corporate environments, worked in startup grounds, worked in freelance settings ...

These are the fields I've been to and each experience brings me learning - may it be in a hard rewarding way or the easy boring way.

You seldom read articles about hiring people, especially if you have been working in shadows throughout your entire career. But this might help everyone see things in a different perspective. I claim no experience in hiring, but I have something that might come handy in this situation. And that is, talking and interviewing  potential applicants -- as they try to grab the opportunity offered in the table.

Not so long time ago, I led a group of System Administrators in a web hosting company. This was my first big shot. I had tons of bloopers and failures, many shortcomings and many lessons learned.

As the company tried to home grow a sysadmin team in PH, I was asked by the CEO, ; "Should we hire someone from outside? should we give people their break?"
My response was "Let's first get those who shows potential, if we need more, we hire external people". Gratitude is paid forward. And this might be my personal bias.

I can still recall the time I was given a break by the CEO. An opportunity that changed my life, my views and myself. If not because of the chance given to me that day, I will still live my life as is -- a first level technical support agent in the lower pipeline of the company. That is why in return, I want to give the same opportunity to deserving people with best practices  and who are serving the company in all their best, line with good culture and work ethics.

Years passed, I see the same people I used to worked with -- happy, improved and empowered. Who would have thought, they too, will be nurtured in the same grounds I started my journey.

I seek nothing in return, seeing them live a better life is already rewarding. Who would have thought that I'll be able to help people to that extent, and the rest is all because of their hardships and relentlessness.

Hiring: Internally and externally

Scouting talent internally is easier. As metrics and performance reviews are already in-place. And it's only a matter of talking to them about what  awaits next. The main takeaway in hiring internally, is the fact that -- these people already shared the values and vision composed within the organization. So it's just a matter of learning those technical stuff and start supporting higher level concerns.

The advantage of hiring external talents is that, you'll have more expectation in terms of experience and skills. Though fitting into the culture is something that should not be compromised.

Depends on what the company can afford and set aside, the answer of whether hiring internally or externally is, it depends.

Payout: High for senior, less for junior

In a the typical interview process, the interviewer would normally ask for the salary you're looking for and negotiate what the company can offer. However, from a technical standpoint, I don't care much of how you rate and see yourself as an employee. If you're worth your numbers, so be it. Money is a motivating factor, so in return for this generosity, the company shall expect the deliverables to be completed.

People with more experience tend to know their numbers, while less experience ones, honestly say the value. It's important to identify who's trying to look experienced from the one who really has the skills.

Attitude: Not a one-size-fits-all house

Talents come from different background and culture. So you should prepare a nurturing ground for everyone's uniqueness and differences.

Regardless of the differences, people work for the common goal and for the common good. Respect is a thing you all value -- without it, chaos is everywhere.

Passion, lots of people say it, but only a few truly understands what it's for. Having great and passionate individuals on the team, scores the goal and wins the game.

These are the common things I keep track when hiring people. My personal guidelines in bringing people in the team, to be a part of a big organization and standing individually (with pride) as someone who have worked on particular projects/task.

Everyone has a standard and so do I.

Monday, August 14, 2017

The Lost and Gain In Embracing Opportunity

In the next two weeks, I will be joining a team of awesome people to build a platform we believe can scale in broader horizon and is competitive enough to survive the demanding market.

Why joining another team when you already have a stable job?
As you grow old, you slowly realize that life falls into two main points; (1) Purpose (2) Family. And it’s up to you to seek for those.
If your personality is alike to mine, you might be fighting yourself daily to always seek improvements, enhancements and advancements in whatever your doing — and that’s purpose right there! The sense of purpose everyone should have. Family on the other hand is something you can find from people whom you love to be with. People whom you can share your stories, struggles and the little triumph you get as consolation in living. This people may not be tied with you by blood but might share your values and beliefs in life. When you happen to meet these type of people — treasure them, as they are hardly to be found.

What’s the catch?
When you work for a company, you make sure things are utmost in-line with your values. This is the best way to feel the “feel at home” feeling while you do your thing. I am not the type of employee that waits for someone to give me command, I am more of a first principle thinker. Thus, this makes me autonomous in my craft. It’s important for me that the company knows how to listen and embrace the inputs they get from the people who works in the organization. This is really important to drive innovation, disruption and growth.
Trust is the right word that fits best to a great culture. You trust yourself that you’ve hired worthy people that is credible enough to take the responsibility in shaping the product/service you are providing. Through that trust, you make sure no blockers are in place that will slow down the progress of craftsmanship — and that’s what make people happy. Trust them and they will work for it like it’s theirs.

In today’s age of technology, embracing the newly develop tools is one good strategy to stay in the game. The risk is big and only those who are willing to gamble and plays the game, takes the huge reward. Experience is priceless, no matter what type it is — good or bad, it all falls down to “what have you learn” and how to move forward with that learning. Companies that push their employees to experiment and provides tools to accomplish such is, gold!

What’s the lost?
When you leave, you take lots of loads with you. The zero-to-hero title is gone and it’s a matter of work to earn those stripes again. For a hardworking man, this is something not fully lost as it can be regained. It’s just a matter of time to completely make a stand in the new ground. No rush, you can’t craft a masterpiece when you’re in hurry (something that’s great takes time to be built).

In my new adventure, I look forward to see myself three times more human and geek than what I am today. More learning, more experience, more failures, more struggles, more gain and more moments to enjoy in the long run. Nothing feels better than to be able work on something that brings impact to society. A proud stand no one can take.

Sunday, August 13, 2017

Reboot & Reformat

What happened to the old contents of the blog? 
I have been blogging my experiences and learning so everyone could benefit from it. Some are technical, some are not.. Some talks about life's success, some are about challenges.. Some are short reads, some are stories like.. 

Nevertheless, I blog what I want to share to the world. As for the old contents, to cut the long story short -- it was deleted.

Why was it deleted?
A long time ago, I worked for a server hosting company and I was priveledge to get a slot to host my blog since I was the one manning the network. Luckily when I ended my service with them, I was able to keep that slot, of course with the big boss' permisson, in order for me to continue my passion for blogging. The approval was a great opportunity for me to continue sharing knowledge and practices without a cost.

Fast forward, almost 5 years of being online and serving rich technical/life/experience contents to the world, it went down last August 11, 2017. As for the reason, I don't know. 

I performed basic troubleshooting: 
  1. Ping 
  2. Ping the IP Address 
  3. Check WHOIS (just to confirm if there is something wrong with the domain) 
Upon isolating the issue, I can see that it's not within my hold and I have no means to further check what's happening with the server. I asked a favor to friend who still works for the company and he confirmed that the server no longer exist. And that's the reason why the site is down. I ask if I could have a backup of the site so I could restore it. After awhile, he confirmed that the host the server is in, doesn't have a backup of it. 

I am under the impression that, since it's a legacy setup, it wasn't included on the up-to-date process, thus, backup was not running for it.

What awaits
I feel bad about what happened. Throughout my career, this is the longest down-time I was about to bare. Also, this is the only time, I fully lost something in production level and without any option of recovering it.

I take full responsibility of what happened. I was too confident about the setup I once had back 2013, and I am now paying the price of being over-confident. This event gave me great lessons I could keep for my journey. I never imagined that the worst case I am preparing for will actually strike me, at my own grounds, at my own stuff and at my own site. I lost too much already -- and I can't afford to lose more. This should not happen again! 

If you noticed, this new site is now branded "Cebuserver v2". I would like to name it this way for this is the re-birth of the original site. New up-to-date contents will be posted in here, by yours truly. 

New beginning... New chapter... New articles to publish...
Also, I follow "Stoicism". So I don't cry over spilled milk, instead I react to a solution without pointing fingers.