About Stephen Jagger

Co-Founder of PayrollHero.com

Faster CI – Our Journey To Halving Our Test Runtimes

Warning, this post is a bit technical.  🙂

[Editors Notes] From time to time our engineers take a moment to write a post for our blog. From Adam our product manager writing about Scrum and Kaizen to Piotr writing about our Engineering Best Practices there is lots to read.  Vince has written on the blog before, his last post was about Adventure Engineering in Da Nang, Vietnam. Today, Vince thought that what he has learned about reducing our test runtimes might be helpful to startup community. Enjoy.

One of my biggest challenges for the past few weeks was to get our tests to complete within 10 minutes.

That doesn’t sound so bad, does it? There’s just one tiny detail which would make this journey all the more exciting: Our code takes 25 minutes on average to complete on 25 parallel build servers and It takes about 4 hours if you run it in one.

I made a quick survey with our engineers and we lose roughly around 3 hours per day waiting for CI to finish.

The plan was to selectively run tests and have cucumbers run only on specific branches — epic, develop and master. This means that every time something gets merged to those branches, cucumbers will run after rspecs. And of course, all this will run in parallel on 25 build servers.

How our code tree looks like:

|- master
|- develop
   |- epic/adding-a-thing-with-stuff
      |- feature/with-things  
      |- feature/with-stuff
   |- epic/the-thing-you-do
      |- feature/bla-bla-bla

We didn’t have a way to execute this plan with our current CI solution at that time so we had to find alternatives. We tried quite a few but most of them were either had limited features or were just simply too hard to get started.

Enter Codeship. It took me no more than 3 minutes to get my first build up and running…and of course, failing. Getting started with their ParallelCI wasn’t that hard either. How you configure your builds opened up a ton of possibilities including selective test runs.

To make our tests parallelize (is that even a word?) I had to use this neat little gem called parallel_tests.

Getting started with the gem is simple. You can execute a group of rspecs like so:

bundle exec parallel_test spec/ —verbose -n $TEST_GROUPS —only-group $TEST_GROUP —group-by $TEST_GROUP_BY —type rspec

$TEST_GROUP is an ENV variable that I set on each pipeline. Basically just the number of the pipeline. $TEST_GROUPS is the total number of parallel pipelines. This is 25 for us. $TEST_GROUP_BY is how we group our tests and that would beruntime for us.

That is one other thing you can do with parallel_tests is group by runtime information. Using this grouping took 2 minutes off of our test runtimes. Getting logs from parallel pipelines was a little bit tricky so I had to do a little scripting magic to gather logs from multiple pipelines and concatenating them back together.

It’s simple really, in the setup section I have two scripts: one to upload each log slice to S3 and the other to download the logs and put them together.

Links for reference, apologies for the terrible naming: – ConcatenateUpload

Now that the runtime logs are covered, it’s time to make the tests work. I have this bash script in our code:

#!/bin/bash

bundle exec parallel_test spec/ —verbose -n $TEST_GROUPS —only-group $TEST_GROUP —group-by $TEST_GROUP_BY —type rspec

if [[ “$CI_BRANCH” =~ .*”$BRANCH_FOR_CUKES”.* ]] || [[ “$CI_BRANCH” =~ .*”master”.* ]] || [[ “$CI_BRANCH” =~ .*”develop”.* ]]
then
  echo “Running Cucumber…”
  bundle exec parallel_cucumber features/ —verbose -n $TEST_GROUPS —only-group $TEST_GROUP —group-by $TEST_GROUP_BY —type cucumber || true
else
  echo “Not running Cucumber”
fi

Conveniently, Codeship has a bunch of ENV variables set inside test instances and one of those is $CI_BRANCH. I just simply check if the current branch running in CI matches either master, develop or what I configured in the settings, it will run Cucumbers after RSpecs.

Finally, this is what our setup and pipeline configuration looks like:

codeship vince paca

This entire approach got our RSpec builds down to an average of 6 minutes and our entire suite to 13 minutes from 25 minutes.

Huge props to the Codeship team for helping out with the transition and thanks for the swag! 🙂

Editors note: This post was originally published here.

Watch Our Singapore Payroll In Action

Would you like to see our Singapore payroll platform run a payroll? Rohit in our Singapore office put together a quick video to show you how easy it is to run a payroll for your Singapore based business. Check it out below:

Want to learn more about our Singapore payroll platform? Reach out and one of our team would be pleased to get on a call with you to discuss your needs.

Restaurant Executive: Karla Campos, CEO of Dell’s Foodhall

As we continue our series of interviews with successful restaurant and retail executives from Singapore and the Philippines I’m pleased to introduce Karla Campos from Dell’s Foodhall in the Philippines.  Karla was kind enough to share some of her experience about running a multi-location restaurant chain in the Philippines. 

karla campos dells foothallYou are the CEO of Dell’s Foodhall, can you tell us a bit more about the brand? 
We are a cafeteria chain with multiple locations all over Metro Manila, providing quality, home-style cooking to the country’s workforce, in a cool and hip atmosphere. While one would find most food chains inside malls, you will find Dell’s Foodhall in office buildings where we cater, primarily, to people at work — young professionals, executives, the BPOs and call center agents. Most of our locations are open 24 hours a day, 6 days a week.

Sounds exciting, can you tell us a bit more about how the brand came about, what you did to understand your customers needs, etc?
People often ask me, “Why Dell’s?” or “Are you Dell?” Uhm.. No. Haha! It’s actually my mom’s name, which is Adelfa.

I took over my mom’s single proprietorship business – then known as Dell’s Canteen & Catering Service, which made it big back in the 70’s and 80’s, catering to institutional accounts. By the time I took over the business in 1996, I had imagined something different.

After working and living in New York, where I dined in the office cafeteria every single day and witnessed how everything was nicely executed — I found myself not growing tired of dining in the office cafeteria since the food and service was great. This to me, was an eye opener. Then I came home and made my rounds in the office cafeterias here and discovered that we were behind — that there was something lacking in terms of the general approach and expectations. The cafeterias here were quite “old school” and sloppy, to be honest. So, I thought of creating something that was more upbeat, and probably more exciting in this segment of the food industry, with a desire to fill in the gap. I tried to duplicate the dining experience I had in New York, and didn’t realize I hit a home run. Now the general office crowd seems to know who we are and patronize us, Mondays thru Fridays. We have come to know who they are, the kind of food selections they are looking for, and the price points they are comfortable with.

dells foodhall philippinesI didn’t change the name anymore since it was a bit late in the game, given that we had already become quite popular with our customers. So instead, we re-branded by naming it Dell’s Foodhall — Foodhall being 1 word, the same way they have it in Sydney, Bangkok, London etc. Then we just sort of modernized the logo to make it more acceptable and recognizable within our target market.

You operate in the Philippines, what challenges come with that? what benefits?
Well, the reality is that our country is still pretty much “third world”. The internet is slow, public transportation needs a lot of work, and don’t even get me started on the traffic situation… Bottom line is, we still have a long ways to go.

On the other hand, as a business owner, I believe I am in a great position to contribute to society, to be a part of the nation building process and simply help make things better. We have hundreds of people in our payroll and as the CEO, I take this responsibility very seriously. Running a business or your own company allows you to create jobs and opportunities for other people. There is the multiplier effect, that every growing economy desperately needs. We are able to create more wealth to go around and have a positive impact in the lives, not only of our employees, but also that of our suppliers, while keeping Manila’s work force — our customers, happy and well fed.

What technology do you use in your businesses? 
We use POS, accounting systems that generally address the needs of our sales, inventory and payroll. We try to use systems that are more efficient, easy to understand and manage to be able to properly monitor the business flow.

How do you decide on a location? (mall? street level? stand alone business?)
We study the location by taking into account the general population in the area, the foot traffic, accessibility, and of course, rental rates.

At what point did the number of locations change how the business is run? I have been told, 1 or 2 locations is ok, but 3+ requires a different management approach, systems, procedures, etc. What was the tipping point for you?
I guess you grow to a certain size, get to a certain level and realize you can’t do everything by yourself anymore. That the “mom and pop” approach is no longer going to cut it. Too many things are happening at the same time — the stakes are higher, your market reach is wider, the public is now aware of your presence — including your competitors. As the leader of our organization, I had to change my management style or the business was not going to survive. In order for us to create the best all around product and be able to compete, I had to read up, studied and observed how other successful organizations conducted business, and was inspired at the thought of what we could become.

I remember going to the opening day of a new location and seeing the long lines.. And then it hit me — we had a brand that the public — at least our target market – was now very familiar with and were patronizing. That same week, I visited a food expo, gave out my business card to every potential supplier, and was surprised they knew exactly who we were and were very excited to do business with us. At that point, it became clear to me that Dell’s Foodhall had a name and reputation to protect, and that it was time to shift into high gear. It was time to professionalize. And so, I started hiring professionals to run our company. Now I have an executive committee, a team of experts, who help me in running and monitoring all areas of the business. It is still a lot of work, but I am not complaining.

What is next for Dell’s Foodhall?
We will continue to expand and open in new locations. As the owner, I am extremely pleased and grateful with what we’ve achieved, thus far, and will only persist in finding new ways of improving our systems and the quality of our food products and services. What can I say — it’s a never ending process. We are always a work in progress.

anything else to add?
To survive in the food business, one must be ready for the hard work that comes with it. You need to be ready to put in the hours and monitor every stage of the process very closely and diligently. You can make a lot of money here — but you can also lose a lot of money.

I always tell people who ask me about the food business that it is far from glamorous and that it is a very demanding industry. You deal with all kinds of people every day. I sometimes start the day meeting with a supplier from whom we order tons of meat items from, trying to agree on a locked in price and then end the day meeting with the a building owner whose rent I am also trying to negotiate — not to mention the managers who go in and out of my office for decisions that need to be made. It is a very tedious, very detail oriented business, with lots of moving pieces. Then again, it is also very rewarding and quite fulfilling. As in any business, you just have to stay the course, stay committed and passionate — as you grow in wisdom as an entrepreneur and as a human being. Be prepared to come to work every single day. I tell you, nothing comes easy in this business. Still, I cannot imagine doing anything else.

Continue reading

Quickbooks Philippines

quickbooks philippines manilaWe have added a new tool to PayrollHero that enables companies in the Philippines to export a QuickBooks journal entry for easy use within your Quickbooks account. This is a formatted QuickBooks Journal Entry report for a specified period that can be imported into the QuickBooks accounting software.

The end result looks like this:

quickbooks philippines

Check out the complete details on how PayrollHero and Quickbooks can work together.

If you are interesting in learning more about PayrollHero’s Philippine product, visit us at PayrollHero.ph. One of our team would be pleased to speak one on one to learn more about your needs.

Do you use Xero? Let us know how we can help with your Xero integration.

Deepavali | Singapore Holiday

Singapore Holidays

Diwali or Divali (also known as Deepavali, Tihar and the “festival of lights“) is an ancient Hindu festival celebrated in autumn every year.[5][6] The festival spiritually signifies the victory of light over darkness.[7][8][9] The festival preparations and rituals typically extend over a five-day period, but the main festival night of Diwali coincides with the darkest, new moon night of the Hindu Lunisolar month Kartika. In the Gregorian calendar, Diwali falls between mid-October and mid-November.” *wikipedia

 

Hari Raya Haji | Singapore Holiday

Singapore Holiday

Eid al-Adha (Arabic: عيد الأضحىʿīd al-aḍḥā [ʕiːd ælˈʔɑdˤħæ] meaning “Festival of the sacrifice”), also called the Feast of the Sacrifice (Turkish: Kurban Bayramı; Bosnian: Kurban Bajram; Persian: عید قربان‎, Eid-e qorban), the “Major Festival”,[1] the “Greater Eid“, Baqr’Eid (Urdu: بقر عید‎), or Tabaski (West Africa), is the second of two religious holidays celebrated by Muslimsworldwide each year. It honors the willingness of Abraham (Ibrahim) to sacrifice his promised son, Ishmael (Ismail)a, as an act of submission to God’s command, before God then intervened, through His angel Gabriel (Jibra’il) and informs him that his sacrifice has already been accepted. The meat from the sacrificed animal is preferred to be divided into three parts. The family retains one third of the share; another third is given to relatives, friends and neighbors; and the remaining third is given to the poor and needy.” *wikipedia

 

Here’s One Cebu Restaurant Who Is Nailing It On Social Media

Editors Note: This post was written by Kyjean Tomboc. She will be contributing to the PayrollHero blog from time to time.

Brique’s Modern Kitchen, cebuWhether you own a small diner or manage a large chain of restaurants, social media presence these days is the norm rather than an exception. This should not be a surprise, given that recent figures by Forbes reveal that a whopping 81 percent of the people they surveyed indicated that social media posts by family and peers influenced their purchase decisions.

Restaurants who opt not to embrace social media marketing will be surprised to find out that they still have a social media presence after all. Diners will inevitably tweet, post photos on Facebook or Instagram, and talk about their experience on Yelp.

To get ahead of the pack, a restaurant’s marketing team should do more than just create a Facebook account and wait for people to like their page. For social media to work on a restaurant’s favor, these two components are crucial – creating a unique brand voice and using this voice to create a dialogue, rather than a monologue, with your customers.

It’s all about engagement and being consistent with it!

Brique’s Modern Kitchen, a newcomer in Cebu’s dining scene, is one restaurant whose social media presence is a perfect example of what it means to be truly social in social media.

Distinct Brand Voice

Brique’s Modern Kitchen is not difficult to miss if you pass by Salinas Drive in Lahug. The same could be said of its social media presence. On its Instagram, the restaurant describes itself as a:

A Cebu based restaurant offering modern cuisine with a rustic touch. Brique is the perfect place to have good food in a relaxing atmosphere.

See what the folks at Brique’s did? In the first sentence, they identified what Brique aims to offer. Next, they highlighted what diners can expect when they visit the restaurant. This is a brilliant example of using social media as a medium to not just talk about what you do but also showcase what your customers can expect from your restaurant.

Exclusive Offers

Brique’s recently celebrated their first year milestone through a free entree of your choice if you share a photo with the #BriqueTurns1 hashtag on Instagram. Offers that are limited to certain social media platforms is one good way to sustain engagement with your followers.

Responsive to Customer Comments

Did we mention that Brique’s replies to each customer comment on their Facebook page? Whether it’s a positive or negative review from a diner, a quick response from the staff sends the message that a restaurant is genuinely concern of its patrons and the quality of the food they serve.

Kick-Ass Multimedia

Aside from high-quality photographs of items in their menu, real diners (not stock photos), and restaurant interiors, Brique’s has a chock-full of kick-ass videos in their Facebook page.

With storytelling as one of the core principles of digital marketing, Brique’s multimedia content are tools that help the brand show its human side and capture its audience’s attention. Stunning visual content elicits emotions and these emotions, in turn, influence purchasing decisions.

Brique’s Modern Kitchen is just one of the restaurants in Cebu who is optimizing social media for their benefit. What other restaurants are using similar social media strategies? Your opinions matter to us and we’d love to hear your thoughts in the comments below!

Continue reading

Changes to Singapore Employment Act – Issue Itemised Payslips and Key Employment Terms to Employees

As we noted back in April, Singapore will be requiring all employees to issue itemised payslips to all employees by April 2016.

From Singapore Ministry of Manpower:

  1. From 1st April 2016, employers will be required to issue itemised payslips and Key Employment Terms (KETs) to their employees. This will enable employees to better understand their regular salary components, as well as employment terms and benefits. This will also help employers prevent misunderstandings and minimise disputes at the workplace. For more details on the requirements,  you may refer to www.mom.gov.sg/ea-amendments.
  2. Employers can find resources and guidance to help them implement the changes here:  http://www.mom.gov.sg/ea-assistance.

Singapore Payslips Singapore Payslips

Restaurant / Retail Executive: Claudine Chan-Cobankiat, Kichitora of Tokyo and Qrius

Introducing Claudine Chan-Cobankiat, Managing Director of Kichitora of Tokyo a 3 location restaurant chain as well as Qrius a small retail chain in the Philippines.

claudine chan1. You are in both, restaurants and retail – can you tell us a bit more about them? 
Yes, we have Kichitora of Tokyo – a ramen chain from Japan with 3 branches at the 2F SM Megamall Atrium, 2F Glorietta 5 and 4F Bonifacio Central Square. Our ramens are differentiated from all competitors because we use pure chicken broth – it not only tastes good but is also good for your health. We also just recently opened our one-off concept called Hajime at the G/F Edades Tower, Rockwell, which focuses on crossover cuisine.
For retail, I manage a small retail store called Qrius. It started as a fun project for me and my sister, Charlene, who now lives in New York. The concept involves sourcing products that we use everyday that comes with added functionality. For example, we are the distributors of Zing Anything, a company that creates water bottles with the added functionality of infusing your water with fruits and herbs. We have 2 locations at the 3F Powerplant Mall, and 4F SM Mega Fashion Hall.

2. When it comes to choosing locations, how do you do it?  (mall? street level? foot traffic? what do you think about?)
We generally choose based on current mall success, meaning there is established foot traffic. Street level is usually better but if upper floors have a good enough attraction and easy access, we consider it too (for example, cinema levels). Another important consideration is access to parking and access during rain.

Kitchitora Manila
3. Will you ever take a sub-par location, if it is in an area you want to be in? or will you wait for the right spot?
We’ve learned to wait for the right spot unless it’s a ridiculously good deal.

4. At what point did the number of stores change how the business is run? I have been told, 1 or 2 stores is ok, but 3+ requires a different management approach, systems, procedures, etc. What was the tipping point?
Yes, you are right. 3 stores was the tipping point for Kichitora as well. Specifically, we had to implement more strict reporting systems. We had to create quality controls teams and overall field operations managers to make sure everything is how it should be and management is informed.

5. What challenges do you have operating retail business in the Philippines?
To us, it’s always been with manpower and inventory. There are many systems that can minimize human error or theft, but as the saying goes, if there’s a will, there’s a way. As with any business, having the right team to achieve your goal is essential.

6. How do you come up with names for your stores?
It has always been based on inspiration or we just think of something that defines the brand in one word.

7. From an HR point of view, what do you do that is unique when it comes to hiring, retaining and growing your workforce?
Usually in our industry, it is considered normal for work to simply be a stepping stone for the staff towards other opportunities. At our companies, we try our best to instill a sense of home and growth as best we can. In short, if you are good, we want to keep you.

Continue reading

Getting to Know Cebu’s Carbon Market

Getting to Know Cebu’s Carbon MarketEditors Note: This post was written by Kyjean Tomboc. She will be contributing to the PayrollHero blog from time to time.

Before air conditioned supermarkets, food specialty stores, and weekend farmers’ markets came into fashion in Cebu City, there were three major food-shopping destinations that locals from all walks of life trooped into on a regularly basis. You wake up at 3 in the morning and march down to Pasil for the freshest seafood of the day. You head to Tabo-an if you want to stock up on sun-dried fish and squid.  And then there’s Carbon, the mother of all wet markets dotted throughout the city, where every produce and wares imaginable can be found.

A Quick Lesson in History

The Treaty of Paris in 1898 resulted to Spain’s cession of the Philippines to the Americans. This development led to the establishment of a railway system in Cebu (yes, there used to be one!)  in the 1900s which went as far as Danao to the north and Argao to the south of the island. Coal, one of the major products transported via the railway line, was mainly unloaded in the site where a large portion of the Carbon Market stands today. Hence, the area earned its name Carbon which the locals that time used to refer to coal.

More than a hundred years later, you will not find large deposits of coal in this portion of downtown Cebu but all manner of produce – from what’s available the whole year ‘round displayed in all their glory on the asphalt road to interesting gourmet finds that are only accessible if you’re bold enough to enter dark alleys.

Carbon Market Today

The allure of Carbon Market has to do with how everything you can buy from here is cheap. Unbelievably cheap. For the most part, there is no middle man. Vendors either pay low rent or simply find a tiny space in the middle of the market and simply stay there until they’re done for the day.

In October 2010, Joel Binamira, owner of Zubuchon and the Market Man behind the popular Market Manila blog surveyed his readers of the top 12 produce they purchase regularly and asked them to post the total amount they’ve spent on the same set of items. He also asked for the local market or grocery where they bought the produce to be included in their answers. From 34 different shops and markets spanning the country’s main cities, the lowest amount spent for the 12-item list was at Cebu’s Carbon Market.

The market has an interesting personality as the people who populate it, majority of which are from neighboring towns and provinces who settled in the peripheries of the market with their makeshift homes. Many of these settlers have also found a living within the market itself.

Like the mishmash of regional culture among its vendors and the people who call it their home, Carbon is equal parts lively, chaotic, and brimming with a hodgepodge of wares to offer – from fresh produce delivered straight from Mantalongon, Dalaguete (Cebu’s Little Baguio) to ukay-ukay to fighting cocks.

Making Your Way to Cebu’s Carbon Market Like a Pro

Cebu, PhilippinesNavigating Cebu City’s mother of all wet markets can be tricky and intimidating for the uninitiated. This guide is not going to tell you where to find the freshest and cheapest kilo of mangoes in the market nor reveal how much a kilo of pork tenderloins will typically cost when you buy from there. We will leave the mini-discoveries to you! We will, however, provide tips and hacks that are guaranteed to help you become a Carbon Market pro!

  • The market is open 24/7 yet the best time of the day to shop is either early morning or late in the evenings. At around these times, most of the stores in the area are closed for business, giving vendors a chance to occupy the store’s front portion and display their goods. On weekends, you’ll find out that most of these vendors are farmers from the countryside, selling their backyard produce. At one point, we found pomegranates sold at 3 pesos a piece back when it was in season. We scoured supermarkets around the same time but not a piece of pomegranate was seen.
  • Ask and ye shall find! It’s easy to assume that the items on display are the only ones being sold. It’s an entirely different story at the Carbon market though. Say you’re looking for itlog bisaya (free-range eggs)? Often, these rare finds are hidden in some basket or wrapped in paper and are rewarded to those who asked for it.
  • The market is notorious for pickpockets. While the local government has made serious efforts to reduce thievery in the area, it pays to be always on guard. Dress down and leave those pretty little blings at home.
  • A designated parking spot is available. However, it could get filled to capacity during rush hour and weekends. Many find parking a few blocks away from the market and simply walk their way into the crowd and vendors.
  • Think before you haggle. While it’s okay to haggle, particularly if you’re buying in bulk, most of the vendors are only trying to make an honest living. The prices are already cheap, so why haggle?
  • Think of it as a treasure hunt rather than a usual day in the market. Rare finds such as kesong puti (white cheese) carefully wrapped in banana leaves, free range eggs, turmeric, and herbs such as cilantro, coriander, and thyme are typically associated with gourmet food shops or specialty stores. They are, however, can be found at the Carbon Market if you’re willing to delve deeper into the market’s dark (often damp) underbelly. Hint: only one vendor is known to sell kesong puti in the market on weekdays!
  • Find a local who has considerable experience navigating the market to accompany you on your first visit.

Given the bargain prices of high-quality produce, it’s no wonder that the Carbon Market continues to attract shoppers of all stripes – from housewives on a tight weekly budget to restaurant owners looking for food purveyors. Stop by at the market when you can!

Have you been to this side of the city recently? We’d love to hear about your Carbon Market experience!


Want to learn more about the restaurant industry in the Philippines? Download our free Philippine Knowledge Kit, full of market analysis for restaurant owners.