Skip to content

Archive:

Journal

Learn how to get paid more as a Web Developer

As a developer we getting better at the technologies we use overtime. That is one way we are getting more valuable. But aside from that, how do you increase your value to the companies or businesses you work for? 

Based from the article from recruitmentbuzz.co.uk

“Businesses don’t just want good coders. They need good people who can code at the same time as understanding the real-life application of what they are doing. Business-savvy, young, bright developers are very valuable.”

Also from bizjournals.com

“Software engineers can no longer rely solely on their technology expertise, but they also must have a keen understanding of the strategic impact of technology decisions on the business.”

Here are the things I learned and things I did through out my experience.

If you want to get paid more, learn how to create more value to the business or the company you work for. Provide impact in the business side of things aside on getting better on the technology side.

Here’s how: 

Understand how the business work

You need to understand how the business work so you know how to position yourself to the company and come up with the best way to add value. 

“What can I do to make more money for the company?”

Money is the blood of all businesses. Finding a way on how you can add value will make you an asset.

Speak the language of the business not just speaking by technical communication. 

Madalas when we speak like a developer or a programmer, akala natin madaling naiintindihan ng boss or business owners yung mga bagay na gusto nating ipa-intindi.

Don’t be like that. 

Always try to speak like a normal person. Because trying to communicate with jargon or in-depth technical way is not making you cool. 

Sometimes dito nagkakaroon ng misunderstanding.

Also it is a good practice that you initiate communication of every progress you make. 

Even just 2 to 3 sentence of daily update will do.

Try to communicate everything as much as possible to make sure you are on the same page and making the same expectations. 

“Like, Hey boss here’s what I did yesterday and this is what I’m currently working on. Just let me know if you need anything. Thanks!”

Sell solutions, not technologies

This can also be apply when you are a freelancer. 

Instead of sasabihin mo na, I do worpdress, python, react, angular, c++, vue, bootstrap and any tech stack na kunyari alam mo, try a different perspective.

Let say merong kang client and they gave you what they want. Instead of proposing the technology itself, Diagnose the problem of the client and position yourself on how you can genuinely help them and be of service.

Solving their problems instead of pushing the technology you know is one of very effective way add value.

Practice empathy 

When I work for someone, I have this perspective na “I own this business” or “I treat it as my own company”. 

So that said, I need to work hard to make this company grow. Kase if this company or business grows, I will grow as well.

Kailangan ng clients ng partners na may care about their problems and work with them to solve it. 

Give care about those things because it will compound growth over time. 

Eventually your boss or the client will see those little things and will appreciate your value by compensating you more. 

If not and you observed that they are just taking advantage of your empathy, then you are in the wrong company. Magisip isip ka na. 

Do not go to your boss with problems, go to your boss with solutions

This is something that I personally discovered working with different boss and clients. 

Think of it like this, yung boss mo, marami ng iniisip and they hired you to fix something or to be of service. 

One thing you can shine as a developer is instead of discussing the problem and make it a big deal, move forward on how you can solve it to save time of your boss. 

Of course, hindi ko sinsasabi na hide the problem before it can cause a bigger problem.

What I want you to understand is when you discuss the problem to your boss, 

It is much better that you already think about problem and already come up with a solution instead of just leaving it as it is. 

Your boss will be the judge of your solution if that fix the problem. 

Always think about how you can save the time and money of your boss or the client. 

Good work ethics

Well this is given if you want to increase your value.

Now, check your salary based on the current market. 

If you think you are being underpaid, it is the best time to ASK FOR A SALARY INCREASE. 

I know I know. Madaling sabihin, mahirap gawin. But hear me out. I remember someone said “You don’t get what you don’t ask for”. And it’s true.

Okay you don’t just go to your boss and ask for salary increase. It’s not work like that.

You need to consider bringing up your accomplishments through out the time you work in this company and how you can help the company grow in the future. 

I would like to leave one of my favorite quote from Jim Rohn:

“If you want above average income, become and above average person”

Relying on motivation alone will slow down your progress

Motivation is great when you have it. You feel like you can do anything. You suddenly believe that you can do whatever it takes to achieve your goals. However, it’s not always like that.

Motivation comes and goes. Waiting for motivation before doing the action will ruin your plans and slow your progress.

I feel like I’m wasting my time when I feel unmotivated. Lazy, wasted and misdirected. If I’m always like that, I don’t know where my life would be.

What you need is Discipline and the power of Habit.

Motivation will fire the engine… at first. Discipline will keep you going when you think it’s out of gas.

Most of the time, When we are not in the mood of doing the action, we hate it because it is out of our will and that lead us to procrastinate.

But if you are Disciplined enough, whatever your mood is, doing the action is buttery smooth without any friction. By doing that repeatedly and consistently, it will become a Habit.

It gives us unusual powers of focus and productivity. Your progress will soar high by the time you know it, you are already an 8 of an inch to achieve your goals.

What it feels like to present an idea to Investors

Short answer: Nerveracking.

March of 2020 days before the lockdown started in the Philippines we were able to attend an event called “The Pitch”.

Startup companies and Entrepreneurs gathered in the event to present their great ideas. For us, it’s the expansion of the existing company of my mentor and very good friend Roland Opeda. The owner of Hive Manila.

To be honest with you I didn’t talk much. I have a part in the presentation but it was like I talked for about 20 or 40 seconds at max. I’m prepared. That’s what I thought. We didn’t expect the questions of the investors.

They break our guard on the first batch of questions but sir Roland able to defend the idea. It feels like I’m going back to my college days defending my video game thesis. It’s exhausting mentally.

In the end, we did great. We are one of the companies selected by Mark Vernon to move forward with the next step. Yey! But because of Covid, It’s a lost opportunity.

Still, I’m glad to be able to experience this rare opportunity and looking forward to future presentations.

Key takeaways from UX+ Conference 2020

“The biggest online UX Conference in Asia is back”

-UX+ Conference

Last September, I attended UX+ Conference via live stream with an audience from around the world. It was filled with valuable insights, stories, and advice from amazing speakers.

Here are some key takeaways that I think worth remembering.

1. How to Solve Big Problems and Test New Ideas in Just Five Days

One of the key speakers that I’m looking forward to is John Zeratsky. He is the author of the Sprint and Make Time. This is not your typical Sprint from Agile Development. Basically, the goal of Sprint is to solve big problems and test new ideas in just 5 days.

John walks through the process of facilitating a design sprint. You’ll map out the problem, ideate on and choose the best solutions, build a quick prototype of the product, and test the solution to a bunch of customers.

https://www.gv.com/sprint/

For instance, Monday is for mapping out the problem and gather the team to be on the same page. On Tuesday, you’ll come up with solutions. Wednesday is for critique of each solution, and decide which ones have the best chance of achieving your long-term goal. Thursday is for creating a Prototype then on Friday, you interview customers and learn by watching them react to your prototype.

It’s a game changer for some startups implementing the Sprint and one I know is AJ&Smart. They transform their agency to serve the Sprint method and they never looked back.

2.  Avoid Unintended Consequences

“Your scientist were so preoccupied with whether they could, they didn’t stop to think if they should.”

-Ian Malcom

Most of the time, we think of creating solutions to a certain problem without considering the unintended consequences or not thinking beyond the thing that we’re making.

Sheryl Cababa framed the consequences by telling the story of Jurassic Park (The first movie) because you know, scientist would like to re-create the dinosaurs in the modern day by using the fossil found in an amber.

Technically the premise is that, scientist asking the question of “can we?” and not the question of “should we?” – and *spoiler*, the movie ended up with dinosaurs destroying the park.

What does this have to do with tech? Sheryl talk about the three principles for avoiding the unintended consequences of our design work.

  1. Acknowledge that your tech is not neutral.
  2. Know your values and stick to them.
  3. Design for outcomes: think beyond the direct benefit of use.
One of Sheryl Cababa’s slide

We shouldn’t just think about the outcome for our business, but we should also think about the outcome for society.

3. Managing Teams

Managing a team is hard. I mean, really hard. I used to manage a development team with different personalities and different skill set. Julie Zhuo talks about the importance of developing trusting relationships between managers and the team.

Trust, Empathy and Open Communication are a few factors of nurturing the team and can help build good relationships.

“Alone we can do so little; together we can do so much.”

-Helen Keller

Julie reminds that you as a manager, your role is to guide the team to see the end goal and what success looks like. Making sure each one of the team member is contributing values to organization or business’ success based on their skills and helping them to leverage their talents. Be willing to listen and to understand.

I remember the article that I read from Medium: I Change Bosses Like I Change Underwear – The article is completely resonate with Zhuo’s talk. Some thoughts that worth mentioning from the article are:

Leaders trust teams because there are more than one leader in the team — nobody is aware of that fact, though. People will do the right thing if you trust them and let them make decisions, while holding them accountable.

“When you’re not trying to be important you behave differently towards others. You go from “how do I make this initiative at work help me look good” to “how do we achieve this initiative.” See the contrast? The need to feel important changes how you act, and therefore, how you achieve outcomes.”

The biggest lesson I ever learned as a leader was to create more leaders. Having more leaders in a team helps you save time. When you need a day off to deal with a massive romantic breakup, the other leaders step in.

I am fortunate that throughout my career, I never had insecure bosses, who want to feel important, always right, and other factors that make a boss – bad.

The bosses that I currently have and the previous ones were full of values, nurturing people, sharing their stories, and serving others – and that, I learned from them.

And That’s it!

UX+ Conference gathered amazing leaders and speakers. I would like to thank Moxie Labs for the opportunity to be part of this event. It is sure worth it.

Writing Procrastination

“Writer’s Block is just an excuse by people who don’t write for not writing.”

Giando Sigurani 

It’s been weeks since my last article. I’m not in the mood to write and I don’t have “writer’s block”. It’s just that, I’ve been busy these past few weeks. (Hey, I’m not considering myself a writer)

Actually, I have a list of topics that I would like to document. In my mind, I want to check each of those so I can move on to the next.

Lack of motivation

Not sure why I’m not motivated to publish something these past few days. It’s good to see my visitors increasing their time spent reading some of what I wrote but the numbers itself do not motivate me.

But hey, looking at the brightside, I think I did well with my previous published post.

Anyhow, I think sometimes it’s good to just go with the flow and not forcing myself to do something productive. It’s okay to be lazy from time to time….. I think.

Super busy with work

These past few weeks we – the team are working on an exciting project. Even though I’m working extended hours and working over the weekends, I think it’s all worth it.

The goal is to make the client happy and I’m proud to be part of the project. We are nearing the end of the finish line. We actually had a “soft launch”. Still, there’s more work ahead of us.

That also means less time to write and publish a new blog. Well, It’s okay. Work is top priority.

I started playing video games again

To tell you the truth, I can’t even play more than an hour these days. My PS4 is collecting dust in the corner. Adulting sucks right?

Well, that is totally okay. I need to make sacrifices for the greater good. Playing after work is what I’m doing recently. You know, just to disconnect from long hours of work. Sometimes it’s good to have a “Me” time.

And That’s it!

If you feel the same way, the feeling of not wanting to do something productive for yourself, I think it’s okay. The absence of urgency is one of the peaceful moments in our life. Of course, there are always drawbacks so enjoy it while it last!

Why I Started a Blog

“Become a documentarian of what you do.”

-Austin Kleon

Austin Kleon has a strong influence on me by his book Show Your Work. Things that he said in his book that hits me hard are:

“Imagine if your next boss didn’t have to read your resume because he already reads your blog”,

“Sounds a little extreme, but in this day and age, if your work isn’t online, it doesn’t exist”,

“Build a good name. Keep your name clean. Don’t make compromises. Don’t worry about making a bunch of money or being successful. Be concerned with doing good work. . .and if you can build a good name, eventually that name will be its own currency.”

and

“Don’t think of your website as a self-promotion machine, think of it as a self-invention machine. Online, you can become the person you really want to be. Fill your website with your work and your ideas and the stuff you care about.”

Sounds cool right?

I Love to Share What I’ve Learned

Every year, I’m trying to learn things as many as I can. I want to be wiser than the previous year. And with that, sharing what I’ve learned helps me to learn more about myself.

I Write Because I Need to Read It

Learning something and store it in my mind is sometimes not enough. I need to write it to make a visual representation of the things that I’ve experience, learned and the things that I’ve failed to do.

I know I need to read it one way or another to remind myself what went wrong and how I can cope up with the challenges I already faced before. Documenting my experience will prevent me to do the same mistakes I did and push forward.

I Want To Inspire and Teach

Somehow, I think it is super cool if someone changes his life for the better by reading the things I blog about online. Well, as you know, I build websites and apps for a living and I want to be an inspiration especially for those people who want to start their career in Web Development.

Documenting what I’ve learned and experienced in almost a decade working in the Web Development industry is I think will be a big help for those developers who want to avoid the same mistakes that I did.

Documenting My Every Success

Well, almost all the people I know want to be successful in their own way. And I’m one of them. It’s great seeing the progress of my success from where I start to what I have become today and the things I will achieve moving forward.

Conclusion

It’s okay if I don’t gain followers or readers. My main goal is to document for myself because I know I need to read all of my blogs one way or another. Until then, I will keep writing.

And That’s it!

For those people who already showed interest and following my every blog post and content, I would like to say THANK YOU from the bottom of my heart. You guys keep me inspired to write and to make better content. Please stay safe. Cheers!

The Power of Journaling

“People with clear, written goals, accomplish far more in a shorter period of time than people without them could ever imagine.”

— Brian Tracy

Most of the time, my thoughts are all over the place. I think too much. I always want to do something but I do not know where to start. I don’t know what would be the next step moving forward.

The first-ever business book that I read is Now, Build a Great Business! by Brian Tracy.

One important lesson I learned from him that changed my life is to write my goals. After all, I want to be successful. And successful people write their goals in a clear and specific manner.

Clears My Mind and Helps Me Focus

When I’m in a situation that I don’t know what to do and my mind is in a chaotic state, I write my thoughts.

It gives me a sense of visualizing what I am thinking and recognizing the thoughts that are not important. With that, I can think with a clear mind and focus on major things that need to be done.

Organize

Sometimes, there are so many things that I need to get done. By writing each of my todos, I’m able to organize and prioritize my personal and work tasks.

Listing Goals

Here is the most important part. Writing my goals. The way I write my goal is SMART. What is SMART you ask?

S – Specific
M – Measurable
A – Attainable
R – Realistic
T – Timely

With this guide in mind, It is easier for me to visualize the endpoint of my goal and how and when I can achieve it.

Problem Solving

My work is about problem solving. One of the key methods of my problem solving process is to write down the problem and analyze it.

Instead of solving it in my mind, it is very effective that I write down all the possible solutions. Making it more visually concrete helps me theorize and think of a better solution.

Conclusion

I know it feels awkward when you write something from your mind the first time. I’ve been there. But throughout the years, I’m getting used to it. It’s like talking to yourself and setting a plan for a good life.

Writing in a journal and writing goals changed my life. It’s helping me to know more about myself and things that I didn’t know I’m capable of. It is a habit that will improve your life for the better.

And That’s it!

Hey, thanks for reading. Do you write a diary or writing a journal just like me? What’s your routine in writing? I would love to know! Cheers. Stay safe!

Why You Should Work at a Tech Startup Company

“Chase the vision, not the money; the money will end up following you.”

Tony Hsieh

I’ve been working with Startups throughout my career and I learned a lot since then. I’m also an entrepreneur at heart.

I actually founded my own web development business but it didn’t last that long. It’s hard. I mean, really hard.

That is why I understand the struggle and hardships of every founder of a startup that I worked for. And because of that, I know how to position myself in the organization and the value that I need to give inside the scope of my skills or even to wear a hat that is not in my scope of work.

Well then, why you should work for a Tech Startup?

You Will Learn The Business Side of Things

If you’re a developer who want to build your own startup in the future, might as well join a startup. You can learn the in and out of operations of the business and you can learn something from the founder itself.

It’s crucial for you to learn the practical things based on experience because, in theory, all the planning and ideas are worthless if you do not know how to execute.

As what Mike Tyson said: “Everybody has a plan until they get punched in the mouth.”

You Will Develop New Skills

Usually, when working in a startup, the team wears multiple hats. I know this very well because I myself did this and still doing it whenever possible.

Because it’s a startup, the resources of people are small. The job might require you to learn new skills that are outside of your skillset to meet the project requirements. And it’s a great thing!

Your Work Will Get Recognize

This is one of the best reasons why I think working in a startup is a delightful experience.

Every work you produce will make a big impact on the company. You will probably work in a critical part of the business, have more responsibility and failure is sometimes is not an option. This reason alone will push you to be productive and make awesome work.

You Will Get Perks and Training

Most startups that I work for have some kind of training program where they’ll buy you a conference ticket, seminar, or course material to study.

It’s because I think they want to invest to people. They want their team to grow and nourish their skills. In return, you’ll apply what you have learned to the company itself and give additional values.

Conclusion

I listed the reasons why it’s great to work with startup companies. But, there is a big risk.

Startups are prone to fail in the first few years of their conception, that is why it is important for you to have a contingency plan and a mindset of “What Should I Do If I Got Laid Off?” I’ve been there, I’ve done that.

And That’s it!

Have you work with a startup? I would like to know! Share your experience in the comments. Stay safe. Cheers!

Lessons I’ve Learned at 27

“Whether you think you can, or you think you can’t – you’re right.”

-Henry Ford

Today is my birthday! Happy birthday to me. I am 27-years-old. Damn. Lapit na ako mag 30!

Celebrating my 27th birthday in the midst of a pandemic. Well, I can’t do anything about that. It is what it is.

Still, I am very happy and grateful for all of the things that happened to us. It’s a roller coaster ride.

I want to start by listing our major achievements this year.

  • My second child was born (Hi Ashe!)
  • We are in the process of buying a house (Yes!)
  • I became a full-time dev at MoxieLabs (Which I really enjoy)
  • I started a Blog (Finally!)
  • Expanded my connections (Hey guys!)
  • I read more books this year than last year (More books!)
  • I’m able to increase my income this year with consolidated projects around 6 figures a month (Goals!)

Of course, there are also disappointments along the way. It’s not always rainbows and sunshine. There are expectations that I didn’t meet and goals that I didn’t achieve. That’s totally okay.

Money

These recent months I started to learn about investing. I learned more about money this year by consuming financial literacy lessons from books and online resources. Shaping a strong mindset about money.

I became more aware of my purchases. I think about my wants multiple times if it will add value to me or I should save the money for the greater good. And I think that’s a great habit moving forward.

After all, I want to reach financial freedom in my 40s. That’s the ultimate goal.

Wiser Than Last Year

I’m learning from my failures every year and this year is no different. I failed in so many things and that’s okay. I will not repeat the same mistakes I did.

Listening

Since I started this blog, there are people reaching out to me that need some advice. I learned to listen to them more than talking about myself. They need to be heard and they need a quick solution to their problems.

I read this quote somewhere: “To be interestingyou must be interested.”

I also practice listening more than I talk. Knowing the right time to give my opinions and not giving advice unless asked. Be neutral at all times and think about what I’m going to say before opening my mouth.

Anger Management

I’m not always this cool. Trust me. Sometimes, the situation makes me disappointed and makes me angry.

I learned that there’s no good decision that I’ll make if I’m angry or not in the right attitude. Nabasa ko from a blog of my friend na “Nakakabobo magalit”. And It’s true.

When I know that I’m going to burst, I try to focus on my breathing and release the bad aura. It’s somewhat helping me to calm down and catch my senses. This habit saves potential damages haha!

A Big Picture Perspective

Everything changed when I developed a big picture perspective. Wait, what does that mean?

Seeing things from multiple perspectives and anticipate the future. We learned to make contingency plans designed to take a possible future event or circumstance.

Hindi ako umaasa kay batman and I hate the word “Bahala na”.

Always Move Forward And Focus On The Things I Can Control

Okay. I know at some point, matatapos din itong pandemic. I’m trying to look forward and move forward.

I’m taking advantage of the things I can only control and not giving a single fuck to other things. Kasi I want to practice spending my major time on major things than spending my major time on minor things.

I’ll try my best to help in anyway I can in my own way. I don’t know how long this pandemic will damage the lives of the people but I know, matatapos din ito. From then, let’s move forward.

And That’s it!

Again, Happy Birthday to me! Let’s not make this pandemic stop us from celebrating our day. I want to enjoy this day for myself and for my family. CHEERS!

My Workaround Solution for Shopify CORS Ajax issue

So it’s been a week since I started to work on a new Shopify side project. What excites me about this project is that it involves an API integration to the storefront and need some kind of validation for the user login.

Integrating an API to Shopify is new to me. Usually, when working on a Shopify store, I’m customizing the theme template and adding functionality that the default theme doesn’t have. More frontend literal work if you will.

So going back to the project, one part of the process is to validate the unique number from the user that need to pass on a third-party API and will send a response.

Everything is set in theory. I will call the API to validate the unique number before the login authentication via AJAX.

But there is unexpected issue. CORS.

The CORS Issue

Generic CORS issue in the Chrome console inspector

Based on what I understand, CORS is a mechanism that defines a procedure in which the browser and the web server interact to determine whether to allow a web page to access a resource from different origin.

This happens when you execute AJAX cross domain request using jQuery Ajax interface, Fetch API, or plain XMLHttpRequest. As result is that the AJAX request is not performed and data are not retrieved.

So technically, Shopify is somewhat initiating the CORS issue and not allowing my ajax call to get the validation response I need.

The Workaround

I went deep dive into it and explore workaround on how to bypass the CORS error. I see in most Shopify forum, I read a ton of suggestions that I need to call the API in the backend and create an “App Proxy”.

WTF was that?

That will serve as a proxy app that will call the api with proxy sub path instead of calling the api directly to its endpoint.

I spent hours trying to figure out how this thing works but unfortunately, I didn’t find a comprehensive guide and still confused how I can run the proxy app to my store and call the API response.

The Solution

Through my browsing about the issue, I found out that there’s a handful of developers doing a call on the backend without this “proxy app” and directly calling the API via PHP with cUrl.

And *Ding!* that light up the bulb in me. That is totally makes sense. I can create a cUrl calling the API from the backend and use Ajax in the storefront to call that PHP file for me to get the API response.

Here’s the overview:

Shopify -> PHP (cUrl) -> API -> Response

Here’s the PHP code

<?php
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS');
header('Access-Control-Max-Age: 1000');
header('Access-Control-Allow-Headers: Content-Type, Authorization, X-Requested-With');

$param1 = $_GET['param1'];
$param2 = $_GET['param2'];

$url = "http://example.com?param1=".$param1."&param2=".$param2;

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");


$headers = array();
$headers[] = "Accept: application/json";
$headders[] = "Access-Control-Allow-Origin: *";
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$result = curl_exec($ch);
echo json_encode($result);
if (curl_errno($ch)) {
    echo 'Error:' . curl_error($ch);
}
curl_close ($ch);

Ajax code

$.ajax({
    dataType: "json",
    url: "https://my-example-php-domain.com/shopify.php",
    data: payload,
  }).done(function ( response ) {
    var data = JSON.parse(response);
      console.log(data);
  });

And That’s It!

If you are having the same issue, I hope this helps. Cheers, take care!