Thursday, September 15, 2011

The extreme of scope creep

I didn't want to start this blog post angry but I will. I think all freelancers have experienced this at one point. You agree to a project and price and then get overwhelmed by the changes and sudden increase in scope of what the client wants you to do. This is a trap that we can too easily fall into especially since we try to be nice and accommodating.

The Project I am referring to is one that supposedly would last only 3 weeks. It would be a tough 3 weeks but we would do our best. I write this post after over two months work on this project. I can identify already the critical points that led us down this disaster.

No final scope of work
I say "final" because it is my job to define the scope of work and that I did using the PSDs that were given to me. I created the site map, I made the project schedule and I also informed the client that we were missing some creatives based on the copy deck that I was given. Little did I know that we would miss our "lock-down" date for creatives and that more PSDs and copy deck versions would arrive via e-mail almost every day.

You don't follow the schedule because you are using Agile
I find that some people have this idea that Agile means they can continuously give things to do and change every day. This is incorrect. Agile as a methodology has a backlog of tasks that are then given to the team to work on during their sprint, usually a two week period. During that sprint, no other additional items are given. QA is also part of that sprint. Then you do the entire process again.

No task management or updated documentation of changes
I initially did documentation but when there are changes happening every day I found it difficult to keep it up. I asked that maybe the client's partner could provide documentation. I was given a site map that was 3 months old. Just when I thought we were getting a handle on the changes, whole new sections of the site would suddenly appear as new PSDs that had to be done asap.

No weekly status reports were being made because each and every day something would change. Thus, progress could hardly be measured because there was no schedule to follow anymore versus a task list. Tasks were difficult to track because people would only send e-mails and not organize the tasks and resources. Developers often found themselves doing the exact same task.

No management of expectations
There was an absolute lack of management of expectations for this project. The client was furious that their deadline wasn't met. The team was boggled at how more and more tasks kept piling up their to-do list. The supplier and their partner were walking out on each other during meetings. There was a total lack of confidence and a lack of leadership.

I'm still working on this project and this is the last one I'll take from this specific client. I hope that you learn from my mistakes. As a freelancer this is something I will always remember. You must always know the scope of your work before you take a project. If you do not have a specific scope of work then you need to work out a monthly payment scheme. A project for $1,000 for 3 weeks is fantastic. A project for $1,000 for 3 months is not. Your time is money. Make sure that you are adequately compensated for it.

Tuesday, March 8, 2011

Starting Out Adventure

One of the biggest hurdles that I had to overcome when I started working at home, was how to manage my time. With the noticeable lack of authority figures looking over my shoulder, and no network restrictions, you can imagine just how much time a person can spend just browsing the web. Then add to that the blossoming needs of a (at the time) 1 year old daughter. Then you can just sit back and watch those deadlines fly away (as well as your livelihood).

I must admit, at first I had fallen into the trap of thinking, "I'm working from home! I'll have tons of time to take on other projects and hobbies." That mindset didn't last long.

I had pretty much jumped, without a break, from my old company into my new lifestyle. That wasn't without it's bumps though. As the sole employee tasked with everything web-based in my old company, there wasn't really anyone who could readily take over my responsibilities. Even if we were able to hire someone new, just getting them familiar with the system would have taken longer than I had left with the company.

Being the nice guy that I am, I worked out an arrangement with my boss. I'd stay on retainer for a reasonable amount of time after I leave. Since they're a US company, I could commit my evening hours to their projects. I naively volunteered to set aside 20 hours a week for them for the first month. By the second week, I was about ready to hook myself up to a caffeine drip.

The following month saw a decrease in the number of hours, but even then, my performance suffered. We finally settled on my billing them for whatever hours I spend working on their projects, instead of just being paid for a set number of hours. Around that time, they had also hired someone local to do part time work.

The moral of that little adventure is, just because you have a stay-at-home gig, doesn't mean you'll have all the time in the world as you might think you would. Sure you'll probably lose the time wasted in the morning and evening commutes, but in my case, that was replaced by my daughter's morning rituals and other household chores. It's as time-consuming and draining as a regular 9-5 office job. There are undeniable perks (working in shirts and shorts in the middle of summer for instance), but bottom-line, it's still a job and you have to deliver.

Since then, to help me keep focused, I've taken to keeping near office-like hours when I work. There are days when I end up being almost completely free, and there are days when I'd be completely involved with work. But either way, keeping a schedule helps not only myself, but also my teammates in other locations.

An average day would have me up by around 7 AM. Breakfast and seeing to my daughter's needs should be done by 8:30 or so. Around that time, I'd be logging in to check work e-mail and see what the objectives for the day would be. Depending on the project, around 10am, I'd be in an online conference with my colleagues to give updates on whatever I'm working on. Lunch is pretty much always a full hour. After the dishes are kept, work is a marathon til 5, 6 pm, or until I hit my targets, after which, I start logging out and turning my servers off.

Sunday, March 6, 2011

Tips on how to get part time or freelance work via a referral

You may be wondering how do some people get part time work in the first place? There are many sites that can help a person who is really interested in getting freelance work. However I'll probably compile them for a later post since that is not what I did. What happened to me is that I stumbled into freelance work because a former office mate referred me to it.

For me, being referred to freelance work is the ideal situation because it means that someone whom I've worked with, enjoyed or was satisfied enough with the experience to want to work with me again beyond our normal working engagement. Either that or he/she is confident enough in my abilities to be able to refer me to someone who is looking for a specific skill set.

This leads me to want to post my thoughts on the subject of being the kind of person people will want to work with or refer for freelance work.

1. Be good in what you do
You can be a graphic artist, a mobile applications developer or a writer. It doesn't matter what you do as long as you can say you're good at it and most importantly your colleagues know you're good at it.

OK, maybe you will ask what do I mean you are good at it? What I mean is that you are able to do your work in an above average manner that shows your skill and you are able to do this in the time that is allocated. Perhaps as a copywriter you are able to show that you can provide the most creative and apt copy. Maybe as a graphical artist you are able to capture what the brand identity is in a logo. Or as a QA engineer you are meticulous in your ability to find bugs and outline how they are replicated in a detailed manner. You are good at what you do.

2. Be a pleasure to work with
Sometimes there are people who are geniuses at what they do but boy you never want to work with them unless you really have to. This could be due to a number of things, perhaps your graphic artist needs to get a bit tipsy before his creative juices flow or you know this amazing developer who sometimes just refuses to talk to you and give you updates. It could be any number of things but what happens is that their genius is marred by their lack of people skills.

Since we're talking about freelance work this also means working with people whom I've chosen to work with. Ask yourself if you really want to work with a person who would have derogatory remarks for anyone else's work but his own. Would you want to work with a person who only talks to you if she feels like it? Probably not.

You want to be a person people will choose to work with not just in your day job but also for any part time gigs.

3. Be able to manage your time
Most people already have a day job and are going to take freelance work in addition to their normal work commitments. If you work all day and until late at night I don't think you'll be able to take on additional work. However if you think you have additional time after your normal day job commitment, you must also be able to compartmentalize. You must be able to separate and put equal effort into your day job versus your freelance work. The deadlines in freelance work are also important and you cannot disregard them. You also need to put the worries of your day job aside as you delve into your freelance work. Then vice-versa when it is time for your day job.

4. Be a good communicator
A lot of freelance work can be done from the comfort of your home. You need to be able to communicate with the client what the business engagement will be. Make sure you know what you are supposed to deliver, when and how much you are supposed to be paid for it.

You also need to manage client expectations. It also is imperative that you are able to effectively communicate what your progress is, any roadblocks you encounter and what you can and cannot do. Like I mentioned earlier, deadlines are still very important so you need to show your client that you are working on his project not just playing Facebook games. You may want to set a certain time of the day for calls with your client for updates and set a time for previewing your work.

5. Be open to opportunity
Sometimes we do not necessarily do what we want to do. We may have to start with small tasks and build up to be able to do what we really want. Your first freelance gig can actually be a very small part in something bigger. However if you do it well, you'll be able to build your reputation. This will snowball and soon enough you will become the person people think of first when referring for a freelance job.

Let people know you're open to anything. Accept the small jobs that come your way and do them well. Don't try to go for big bucks at the very start because you will be untested. If people like your work and how you do your work they will insist on paying you more.

I hope these tips help you in thinking about how to become the person people want to do freelance work with.

Tuesday, February 22, 2011

Jumping Home

Around the end of 2009, I found I had been working for the same company for almost 5 years. It was the company that allowed me to leave Manila and set off on my own in a different city. It was a stable company based in the US but with developers here in the Philippines, and the people were great friends and colleagues. I had grown a lot while I was there, and I owed a lot to that company. However, I had pretty much hit a wall and I felt I needed to get out if I wanted to move on with my career. I was at a point when I was pretty much uninspired at work and starting to loathe going to the office.

Enter 2010, and I received a call from a friend. They had an opening for a developer in their company and he wanted to know if I was interested.

Some background on my friend. He's one of the best programmers I know. Pretty much a genius. I'd been aware of his work set-up for some time and I had actually joked to him numerous times that he should bring me in whenever he got the chance.

So anyway, my friend offering this job, was literally an answer to my prayers. He didn't even have to give me details about the job. I was pretty much set to say yes as soon as he asked. So as soon as we worked out the details and I got a better idea of what I'd need to do, I updated my CV and sent it out to him.

Soon enough, I was contacted by the company's ops head and interviewed over the phone. Everything went smoothly and I was asked to fly to Manila just for a face to face interview and to get the contract. Things got slightly delayed at this point since my friend got busy, but eventually, the date was set and I flew to Manila to finalize everything and sign the contract.

And so, 5 years to the day after I started with my old company, I handed in my resignation. A month after that, I started working from home full time. And that's where I am now.

How does working from home compare to being in an office? For me, after a few adjustments early on, I've found that I'm actually a lot more productive in this environment. Being in my industry, it does become difficult at times to separate work time and home time. But it's been fun so far and I honestly can't remember how I managed to make a 9-5 office job work before.

Wednesday, February 16, 2011

Home office essentials

I am inspired by B's post on what he uses for his home office. I'll continue this line of thought.

Computer
This can be a laptop, desktop, a PC or a Mac. It doesn't matter. You'll need something that allows you to open Word, Excel, Visio and several chat dialogs at the same time. If you're a graphic artist you'll need some memory if you plan to work on big image files.

I like having a 2 hard drive setup with an external hard drive. My applications are usually installed on the first drive and I save documents on the second drive. I also periodically back-up my documents with my external hard drive.

Software
As a project manager, Visio is indispensable to me. I find that the open source alternative Dia is not my cup of tea. I was also used to using Microsoft Office but you can use OpenOffice as a free alternative or go totally cloud based with Google Docs. I also use OpenProject since MS Project is quite expensive.

I have Skype and Yahoo Messenger installed as my instant messaging applications. Skype becomes very important for my daily scrums with my team as we all do a conference call.

For file sharing across teams I share my Dropbox folder. This way we don't have to send files back and forth via e-mail. You can install Dropbox and it will sync your files automatically in the background or just access from the site.

Other equipment
In my case I need a headset with a mic. Yes, I look like a call center agent but this allows me to have my conference calls in private. I also have an IPad which I initially bought just for myself but find that I am testing our IPad optimized sites on it. I also have a Blackberry phone which my client sent over for testing the Blackberry application we're working on as well as an Android phone.

I have a Flip HD video camera which I used to video the behavior of this app I was testing. This is a bit extreme since you can use your own phone's video function to do the same thing.

Online tools
In some projects we do use Basecamp and another one that I'm currently road-testing is Pivotal Tracker for agile software development.

Internet access
This is the most important one for me. I find that I need a reliable connection so a DSL line is my only option. I use SkyBroadband right now but I did encounter some difficulties last week. I hope that they really fixed their plant trouble.

So there! Most of these tools can be downloaded from the internet or are items that you would normally have in your home. I think one of my next posts will be how to organize your work from home position or in other words: How does your client really know you are working from home?

Cooking @ Localhost

1 afternoon (one or two hours is enough, add more to taste)
1 two-year old
1 dad/mom or both
1 ball

Put work aside. Take the afternoon. Mix with the ball.
Toss the ball to the two year old. Have mom/dad participate.

Makes a LOT of servings of fun and laughter.

Sunday, February 13, 2011

How I got started working from home

To give you a brief background story, I am a project manager who was recently retrenched from a company. I'm not your typical freelancer and in fact was actively looking for a regular job. However over the Christmas season a former officemate asked me if I wanted to try some part-time work. I would usually not be open such inquiries but I did need the money so I said yes. A lot of people had already approached me for freelance work and I thought this might not pan out as well.

I was introduced to his friend who is based in the US and she functions like a client officer. She coordinates with her clients in the US and needs people to do the work here in the Philippines. She was looking for a project manager and due to my friend's recommendation wanted to "interview" me via Skype.

The interview went well enough and though our initial project was quite annoying due to the many unanticipated bugs that plagued it; she liked my working style enough to offer me more work.

I had reached a crossroads then, another company was lining me up for interviews while my client wanted me to do more projects with her. I weighed the pros and cons of each.

I thought of myself as a corporate animal since I worked well with both business and technical people. However the thought the commute and being away from my son most of his waking hours were not that appealing. Yet a corporate job would give me support in the sense that I would have medical benefits and probably bonuses as well.

Starting off in this freelance journey of mine meant working primarily at home. However my work is entirely dependent on how many projects I get. I work with people that I have not even met! Everything is done online like sharing documentation, getting feedback and monitoring progress. It is twice as challenging. Yet, I see my son and am able to also do many household errands that would normally would be allocated for the weekends if I had a corporate job.

I consulted my family. Some people didn't really understand it but my Dad and husband thought that freelancing was great. They also liked the fact that I can keep a close eye on my son all the time.

Thus, I made the decision to follow through on this freelance journey of mine. At times it can be very challenging since I need to adapt to the timezone of my client and coordinate with people I never see. However I find that doing this allows me to balance my need to be challenged as a productive member of society yet still be there for my son. I may just have started on this but I hope to continue it for as long as I can.

Tools @ Home

Now I know I promised more of an introduction for this post. Insipration took me down a different route however. :)

One of the things I need to keep in mind since I work from home, is that I have to be a little more organized with my planning and scheduling that I would normally be if I were in an office environment. One consideration is that in an office, I'd pretty much have an unlimited supply of post-it notes, pencils, notebooks, and other stuff* that would make my daily organization tasks much easier.

*yes, even if I am in IT, I am still old school when it comes to my organizational skills. Pen and paper are never too far away when I work.

Working from home kinda limits my resources in the office supply department. Another challenge that faced me was that I'd have to coordinate and work with people that I'd only be meeting in an online setting most of the time. So to face these challenges, I've come to rely on the following set of tools to help me through my day-to-day activities.

Chat Clients
Most basic, but also, one of my most important tools. I mostly use Yahoo Messenger and Skype to chat and touch base with my colleagues at work.

Time Management
1DayLater - Early on in my career as a work from home person (from here on in called a localhostertm), I still had to finish off some work from my previous employer. Since I was no longer a regular employee, I had to bill them for the time I spent on their projects. That's when I discovered 1DayLater. It's evolved a bit since I first started using it, but the basic tools are there. A timer that lets you be as accurate as you need to be, mapping and graphs to give you a visual idea how much time you're actually spending on a project, and, though you have to pay for it, tools for billing.

The free version is more than enough for my needs.

Document Management
Google Docs and Open Office - One of the biggest losses I had when I left my previous job was that I no longer had a working copy of Microsoft Office. Say what you want about MS, but the Office tools are pretty much a standard. My initial solution was to turn to Google Docs. Aside from keeping my local hard drive free of work documents, Google Docs also had the advantage of facilating document sharing between my colleagues and myself.

Pretty soon however, I had to succumb and admit to myself that i needed an offline document suite, and that's when I turned to OpenOffice.org. So far, it's been able to handle all the MS Office documents that I've received and it hasn't really given me any headaches. My one complaint is that it still can't handle Visio files. :p

Project Management
BasecampHQ - This one was set-up by the office. It's enabled a handful of us developers to coordinate and work with our project managers and superiors and keeps a nice time log of our activites.

GitHub - Another tool selected by the office. I'd been using the basic git tool with our senior dev for the past year. Recently, the company adopted git as a whole to facilitate code sharing. All I can say is, this would have made my life so much easier in my old companies. Sigh.

That wraps it up for me for now. Those are the top aids that I use daily. There probably are better alternatives out there, but so far, these haven't failed me yet. I've rarely touched a pen and paper to help organize my work since I started using these. :) That says something about how useful they are.





Thursday, February 10, 2011

Welcome!

Please, make yourselves at home.

I'm B, the other half of this project. As a brief introduction, I am, as M has mentioned, a work at home dad. This has been my professional set-up for nearly a year now. I'm more into the back-end side of IT as opposed to my partner who usually fronts to the customers. :)

Please bear with me as I get my feet wet and shake my writing cobwebs off as this is also my first official blog (took me long enough I guess).

I promise a lengthier and more detailed introduction about my work from home experience next time.

Welcome to the Work @ localhost blog!

Welcome dear readers to a project that a good friend, B, and I just decided to do. I'm M, a work from home mom and IT professional while B is a work at home dad and IT professional. We actually live in two different cities and do two different jobs. However we both have one thing in common and that is we practice our profession solely out of the comfort of our own homes.

Please stay tuned for our next posts as we discuss how we got into the work from home gig, what the benefits are and what we do to maintain a professional outlook while working remotely.