Ways to Start a Software Development Career

softwaredevelopment

Whether you are a fresh graduate of any computer studies, maybe computer science, computer engineering or BS. Information Technology or you are passionate in software programming & development, then you have all the options and sky is the limit.

First of all, you have to decide whether you want to start as an employee or you want to do business of your own.  Some may try employment initially as their training ground and then eventually shift to their own venture.  But in any case, its not always about software programming and problem solving.  One should be business & marketing-oriented, meaning focus on the end-users’ need than product features because most likely those features aren’t needed at all.

So what are the ways to start a software development career?  Below are some suggestions:

1. Join an MIS team – this is probably the easiest.  Many of newly graduates opt to work and join an MIS department of a company or industry not necessarily in IT/software business.  You will work on in-house development projects, desktop and server support and even hardware troubleshooting, they may enroll you to some skills training and use you to develop internal software applications or middleware and application support.  This maybe ideal as a training ground but you might want to consider other options especially if the company you will work for do not innovate enough to have a sustainable MIS team.

2. Work for an IT software company – Many talented Filipinos prefer to work in an IT company after graduation for the obvious reason of working in an industry related field.  But instead of developing applications for internal use, you will have to work for their clients.  Depending on the company’s culture and methodology, for small companies, you’ll be a jack of all trades, meaning your tasks will vary from requirements gathering, to analysis and design, development, testing and deployment.  For bigger companies, you’ll be assigned of a specific task or module alone.  I suggest that if you are confident in your programming skills, one should pursue working in a smaller company because not only you will learn a lot, you’ll be a pioneer and when the company meets its breakthrough then stock options will most likely happen.

On the other hand, bigger companies will give you formal training, by-the-book software methodology and will make your CVs attractive then working outside the country is the next step, which I discourage because of the lack of senior analyst in the Philippines.

3. Work as a freelance programmer or your own company – this one is too risky but just like in any other risky actions, the rewards and opportunities are infinite.  This occasionally happens when a friend of a friend owns a business, then will offer you to work on a project that will give you instant $$$.  The thing here is, assuming you are successful with the first project, but most of the time its not with lack of experience and naivety, there’s no guarantee that you’ll get a new project.

Being knowledgeable in software development doesn’t mean you can design an accounting program.  In working for yourself, we suggest that you have a niche, there are lots of options: ERP, CRM, front-end solutions, middleware, programming tools, your own database, your own web server, a web-portal, a social-networking site, web design, SEO, cloud computing, etc but ensure that you are also thinking the business side of things.

The good side here is that this may give you the opportunity to be the next great software company specially if you invent something extraordinaire.  You may opt to selling the product’s intellectual property or the company itself after a long run or pursue it as a built to last company.

Just don’t be confused between software development and software implementation.  If you want to be a hardcore developer then be in a software development job.  Software implementation is fundamentally the delivery of the end-product, it involves implementation planning, installation, training which is a totally different thing.
So that’s it, you might try one or all but in the end, its the journey and living your dream and passion that matter.

Seven Habits of a Great Programmer

company-concept-creative-7369

When we do our interviews with programmer job applicants, we always ask for the best trait of a great programmer. Mostly we hear logic, resourcefulness, patience or diligence. There are really no right or wrong answers in that question but over and above those qualities, an important aspect is the habit which an organization can only see within the person when they are already on board.

Aside from technical skills and logic, below are the habits  that we teach to our team:

1. Good Time Management — Tardiness is one of the issues of any company. As a programmer, sometimes we tend to exceed working hours to finish tasks and go to work late the next day but we always forget that following working hours are really important to achieve balance, be in sync with customer availability and also with the team access to its members.

2. Thorough Understanding on Customer Requirement — a single user story phrase is not enough. A great programmer should have the diligence to understand and decompose it into detailed technical tasks and/or sub tasks for the project to have a close to accurate estimates.

3. Full Algorithm before Coding — use cases, pseudo codes and flow charts are very vital in software development. A great programmer should not be so excited to code right away but instead, he or she should complete the algorithm first. Coding in effect will only just be an encoding task.

4. Understands and Helps Define Acceptance Criteria — test scripts on a high level are defined by the product owner but a great programmer must be able to write technical test scripts and aware enough of the ramifications of skipping these.

5. Exhausts All Resources — what if you’re dead end? A great programmer is a resourceful person. One who is able to ask its co-member, or team leader. One who is skillful in searching the Internet and who has the patience to try and try. Surrendering will never be an option.

6. Diligent in Acknowledging Correspondences — soft skills are a common problem for us programmers as introverts. But a great programmer is aware of this weakness and should be able to have the initiative to improve oneself and execute customer service philosophies of the organization.

7. Proactive — a good programmer is more proactive than reactive. He or she should have the initiative and concern to improve processes and enhance software development productivity tools such as SVN/GIT, agile apps or anticipated software bugs.

At the end of the day, whether you are employed or freelance, software development is customer service. A great programmer understands the business value of every tasks for one to feel authentic empathy in delivering any service.

Innovating in Zeroes

abacus-addition-arithmetic-1019470

I came across the term “Innovating in Zeroes” the other day when I was listening to Tony Robbins’ Podcast where Skype founder Jonas Kjellberg was being interviewed.

 Basically, “Innovating in Zeroes” means to innovate by cutting down the cost of delivering a product or service.  One example is when Airbnb found a way to eliminate hotel management cost and pass it all on to the property owner.

Another approach is to find a way to add an extra “zero” to your product value.  The most common example of this is by adding a feature and to your product and attach a premium to it.

Hilsoft’s latest innovation, Snap Accounting, is one great example of subtracting “zero” from the cost by eliminating the tedious implementation process, making the service easy-to-use and implement by the end user, with minimal or zero support from us.

The end user can use the product for free at the onset; we add the “zero” by having the option to activate certain features they need.

Another ongoing innovation we have is GlobaGia.  We aim to cut down the cost of marketing (this is subtracting the “zero”) and maintaining a website for tour experiences by providing an open platform for tour providers (this is adding the  “zero”).

 In any case, one important lesson I learned recently is to know who you are innovating for.  From there, innovate for that niche by determining which “zero” to add or subtract from the current market.

Snap Accounting Series: Beta Launch

Yesterday was the day that I’ve been looking forward to in 3 years. The product is now launched but limited to the free check writer app. Any user can register and use the app to book their disbursements and generate expense reports online.

It is mobile responsive so you can easily book expenses even outside the office. You can assign the preparation of checks to someone and as a small business owner, you can approve it anytime and anywhere. All prepared and approved checks can be printed online even by batches.

Marketing plans are all set and its just a matter of execution. We plan to post teasers of the next app but in the meantime, we will be on standby for any feedback from the users to the initial release.

I can’t wait for your feedback or share with you testimonials from other users.

After years of surviving and growing as an ERP company for SMEs, I am glad to have deployed a product for startups and micro business owners.

This is an innovative tool and will definitely assist them in capturing their transactions so they know how and when to grow the business with the reports that Snap Accounting will generate.

Creative Ideas to Habit Stacking

books-classroom-college-289738

How many times did you say yes to someone and then forget about it the next day?

How many times were you successful in meeting your New Year’s resolution?

Why do we always say we don’t have time to do something?

I would guess that we would say “many times” to all these questions.

If you’re reading this, I want you to take a moment and think of your daily habits and action.  These habits and action have brought you to where you are now, and most of the time, you were not aware of it.

We are used to our routine of waking up, taking a shower, brew coffee and go to work.  By end of the day, we go home, turn on the TV and/or browse Facebook and YouTube.  Deep inside we want to do something else, probably plan for a vacation, pursue a hobby and all that, but we are too stuck to our routine to do so.

Once we imagine the effort required to do such things, then we’d rather go for small rewards of sleeping, Internet surfing or unconscious eating.

Success Comes From Small Actions

Not so long ago, I learned about habit stacking that resulted to good productive results.  I was so discontented with my life for a while because I was so frustrated in pursuing things that I love.  I was always in a hurry and not taking small steps and actions to gradually meet my goals.

Putting up big goals at once is so stressful.  But starting with small habits or routines to achieve them is one creative way to build on them as you realize its importance day-in/day-out.

Create habits that uniquely matches your life or what you want from it.  Try to set habits for short term goals, mid term and long term.

This a broad topic so I’ll try my best to give ideas by sharing with you my own habits at the moment.  In all honesty, since I did this, I was able to balance my body chemistry and have a healthy mind.

I hope you can get something out of it.

Morning

5 min – I wake up and brush my teeth right away.  Doing it gives me a quick boost out from sleeping.

15min – I sit down and meditate.  I used the Calm app for guidance. It clears my mind.  This habit gives a long term effect on a balanced mind.

15min – I listen or say affirmations.  These affirmations are my fuel in starting my day with positivity, gratitude and getting ready from whatever challenges I will encounter for the day.   This keeps me going and motivated throughout my life.

60min. – I follow a daily workout towards my goal to finish a marathon this year.  I just downloaded a program online and follow it. The thing that excites me in working out is the podcasts that I follow especially about business and technology in Spotify.  Overall long term health benefits plus learnings and ideas you get from Podcasts.

15min.  – Journaling.  I usually log whatever feelings I have– anxieties, worries, excitement and it keeps me sane.  Also, it gives me a different perspective on things, enabling me to find solutions from time to time.

15min. – Check my emails and messages.  I only do these once I have done all my habits above.  My notifications are normally turned off and check them only 3-4 times a day by batch.  By doing this, you get to keep focused on important things for the day.

This is my morning routines, I usually wake up around 5am and my day is already complete when I have done all these before I go to work.

Lunch

60-120min. – I always look forward to writing and engaging online.  I usually write these kind of posts with my after meal coffee in a Starbucks outside the office.  Writing is one of the things I love and who knows?  I might just write an epic article about something that might turn out as a book.

Writing also clears my mind as I get ready for my next meetings in the afternoon.  It’s took me a while before I learned that lunch time is my best time to write.

I tried writing early in the morning and late in the evening and it always didn’t work for me because normally I was always excited to workout in the morning and am too tired at night.

Try to find what works for you.

Night

60min. – my first activity after work is to connect with my loved ones.  I usually eat dinner with them, call/Skype them when they are away or just basically sit down, listen and talk.

An hour of undivided attention and small actions like these lead to improved relationships.

60-90min. – There’s a little guilt about this, but I do watch Netflix or play PS4 from time to time.  To me, this also gives me a good transition from work to life.

60min. – I read about current events, ebooks or learn about a certain topic.  Right now, I am reading Crushing It by Gary Vee and studying about podcasting.

30min. – My last habit for the day is to prepare my workout attire in the morning. When I have trouble sleeping, I meditate again and visualize my ideal day the next day.

Weekly

I also have a hunger for creating art.  It can be either photography, music or sketching.  Right now, I was able to convince my daughter to sing and record songs for me every Saturday while on her summer vacation.  Again, it can be an epic product that I can share or probably monetize later on.

I do biking and long runs as well on weekends.

Others

I also have the a habit of taking down notes and reminders.  When I commit to someone that I will get back to them, I have a note to remind me to do it.  This gives you credibility and and dependability.

Music Innovation Idea

I so love music.  It’s probably my 2nd career choice after the software business.  There’s so much creativity and innovation that can be done with music and I am so pumped that, with this blog as my medium, I can’t wait to get back into this thing.

I’ve been thinking of a good piece to create in getting back into music and recently, while taking a shower and listening to 90s songs in Spotify, I thought of something.

What if I remake 90s alternative rock songs that I love? Re-arrange it to sound slow chill with my daughter, the new generation, singing it.  It’s like getting my sense memories back and modernising it a bit.

My next challenge was how to convince my daughter.  Well, it’s not that really hard.  She recently asked me to renovate her bedroom and I said yes in exchange for 5 songs.

So I got all my old electric piano and music tools from the closet and tried my first attempt using Apple GarageBand.  I posted it in my first ever YouTube channel.

Glycerine By Bush (Cover)

I remember this song when I was in my dorm room in Paco, Manila in college.  I can’t wait to watch and listen to this 10, 20 years from now.  Good memories.

 

Moonshot Thinking

pexels-photo-414075
Would you rather set a sales target of $1M or $1B? The common answer is $1M because it’s realistic.  But if you know that the chances of hitting $1B is 1 out of 100, would you still go for $1M?  Suddenly 1% of $1B or equivalent of $10M seems realistic if you change your perspective right? Then you’ll go for 10 times of your minimum target.
There’s a quote that says, “Shoot for the moon.  Even if you miss, you’ll land among the stars.”
Moonshot thinking is targeting 10X improvement instead of 10%.  Projects fail because they aren’t so ambitious.  The biggest benefit for this mindset is the inspiration it gives to the team to set and meet certain goals.
The first step to moonshot thinking is to not tolerate problems. The biggest problems are the biggest opportunities.  If you don’t tolerate problems then you always think of ideas to solve them.  If this is your mindset, then you will force yourself to devise a strategy and tactics to meet your target of growing 10 times and even if you fail, practically speaking, 5 times, 6 times, 3 times then it’s good enough.
So what are other steps?
  • Introduce the concept to all team members.
  • Be curious and ask questions.
  • Generate ideas/solutions and brainstorm with it among the team.
  •  Execute and implement.
It is also important to check your progress regularly.  With that, you’ll know where you are or having a mindset that good never is enough.  Always think of better ways and how to improve to the next level.
When your target to grow is 10X, then you don’t care about risks, your efforts, resource and energy are stretched enough to disrupt yourself.

This kind of thinking may not be for everyone.  There are people who are still pragmatic and conservative.  But to me, it’s all about balance.

So how would one carry this out in the real world?  Ask yourself, are the sales efforts good enough?  Are you exhausting all possible marketing means to generate leads and awareness? Are you diving deeply into customer problems to come up with new products and solutions?  Big thoughts must be followed by big actions.  Go all-in. 
In our company for example, for this year, we aim to increase our leads 10 times, therefore increase our revenue and profits.  With that, we are exploring all efforts to grow our leads from internal digital marketing efforts, outsourced SEM/SEO management and traditional promotion.  When we do not meet them in a few weeks, we regroup and brainstorm on how to reach them until we are successful.
It’s not always about technology.  It can apply to all dreams, aspirations and problems you want to solve.  If you want to write a book, then write a novel instead of a short story.  Create a music album instead of a single.  Aim for marathon instead of 10km.
With moonshot thinking, you’ll dream bigger, exert bigger efforts and achieve greatness!