Showing posts with label Management. Show all posts
Showing posts with label Management. Show all posts

Sunday, February 28, 2016

5 Things you should never discuss your manager

5 Things you should never discuss your manager

An employee should be fair and transparent with his manager, but few revelations can spoil your bonding with your manager. Try never ever talking about these things to your manager:

1. Your doubt on manager' decisions - At times, you may want to raise questions on his judgement. Do yourself a favour - give it a pass. You may not know what business pressures he/she is living through.

2. Snooping on manager's life - Every employee wants to check what his or her manager is doing in social life. Don't blow your cover by admitting to doing it unashamed.

3. Office gossip - Never share office hearsay with your manager without checking its truthfulness. Sharing something random that you heard in the cafeteria and reacting to it may get him or her thinking that you are not mature or trustworthy.

4. Your personal secrets - Your life and its constant struggles are for you to handle. Pouring it all out in front of your manager will put you in a vulnerable position.

5. Your expectations from the manager - The manager is mandated to put forward his/her expectations from you. But it does not mean you to go and tell the manager how you evaluate his/her skill sets!

Wednesday, February 19, 2014

Can Software Developers enjoy their personal life?

Can Software Developers enjoy their personal life?

Normally in any job around the world, you have to work for 40-45 hours a week. But is this really true for a software developer? As a software developer, if you have to grow in your professional life, you have to sacrifice your personal life. This statement is intimidating, but true to some extent. Mainly, the initial years of a software developer are very crucial and you have to work extensively to thrive in your career. Only the lucky software developers get flexible working hours in the office otherwise most of the software developers have to compromise their personal life.

In a software industry, you will have to face:

1. Tight Deadlines
2. Excessive Work Load
3. Staying Late Nights
4. Working on Weekends
5. Code quality and code delivery at same time
6. Bug fixing

If you are a software developer, you have to try hard to maintain work-life balance. Software development is full of uncertainties. Any time any thing can happen in your project and then you have to sit to solve that issue. You always have to think twice before planning your evenings, weekends and holidays as these uncertain and untimely issues can destroy them easily. If you are planning to go for a long holiday, you will have to plan that according to the situation in the project. If you are running through a lot of issues, forget that you will get leaves. You have to inform your manager months ago for your holiday plans otherwise just forget it.

Single vs Married vs Parent Developers

If you are still single, that's fine. You can stay late evenings, you can come on weekends etc. You can also take excessive work load and pressure because at this stage of life you don't have to care about other troubles of your life (except your girlfriend, if you have :) ) as your personal life is smooth till now. But once you get married, you get extra personal life responsibilities on your shoulder. Now you also have to care about your life partner. You also have to give sufficient amount of your time to her/him. You cannot come stay late in office every evening, cannot come to office every weekend etc. etc. The situation becomes worst after kids. At this stage of life, you really have to struggle hard to maintain work life balance otherwise you will not be able to see your kids growing.

Advice to software developers:

1. It depends on how you handle the situation and your skill. However, to survive in the any kind of stream, you should invest your time for atleast 2 to 3 years in that domain and understand clearly. Then you will go into a better position in that stream and you can do well with balanced life. I mean, after you understand clearly about what you do, then only you can prioritize the work properly and can live balanced life with work and family. There are lot of companies which expects only 40 hours of work. Even there, if you fail to deliver, you should put more time and complete the work.

2. Companies take advantage of eager graduates and workaholic tendencies. Just refuse to fall into the pressure to extend hours. If companies can't deal with that, then your better off looking for a new employer. When interviewing at new jobs, it would be good to find out what their overtime policies are. If they have real overtime policies that involve giving you respectable amounts of money for working late, they're probably not as likely to ask for 60-hour work weeks (though I would try to talk to other employees there to get an idea of what actually goes on).

3. Product companies have better working hours compared to Service Oriented companies. So try to get into product companies. But product companies are limited as compared to software oriented companies. 

Sunday, February 16, 2014

Tips to make Interview comfortable for Interviewee

Tips to make Interview comfortable for Interviewee

Job interviews can be intimidating and uncomfortable for applicants. People enter an interview unsure of what is expected and nervous about their performance. The more you, as the employer, can do to make the experience less stressful, the more accurate your impression will be of the person you're interviewing.

Some HR personnel may make candidates feel nervous, unintentionally. However, most HR staff want prospects to feel welcome and at home. It’s important to remember that your company is being interviewed too. People are becoming more and more selective about the jobs they’ll accept these days as a result. Therefore, here are a few simple things you can do that will help job candidates feel much more comfortable before, during and after the interview process. 

1. Have someone to greet the candidate personally

No matter how busy things are, you need to make a point of having someone ready to make the candidate feel welcomed by the company. You do have a position that needs to be filled and the only way that’s really going to happen for any significant amount of time is if you find someone that really wants to be there. Welcoming a candidate is a simple gesture that will help the candidate decide whether or not this is the right job for his or her needs.

2. Make introductions 

Don’t leave the candidate wondering who everyone in the room is while everyone in the room knows who he or she is. It makes for an uncomfortable situation for the job seeker and one that may ultimately be a turn-off to the candidate and his or her interest in your company.

3. Give the candidate a chance to warm up to you and the situation rather than diving right into the heart of the interview process

There are benefits to small talk that go far beyond ascertaining a little bit about how the other person thinks. It helps put people at ease and makes the interview much more productive on all sides. It also lets the candidate see that there are real, genuine people on the other side of the hiring equation. Don’t skip this important part of the process. 

4. Explain the interview process so the candidate knows what to expect

This will make your candidate feel much more at ease and help you feel more comfortable as well. But it also gives the candidate a moment or two to map out how he or she is going to approach the interview questions, and how to follow up.

5. Allow the candidate time to fully articulate his ideas and thoughts, and invite follow-up questions

If the candidate feels rushed through the interview he may feel as though the job is already lost. More importantly, he may feel that the powers that be within the company aren’t really interested in listening to what he has to say. Give the candidate your business card and invite him to contact you with any additional questions or concerns.

6. Treat it Seriously

When you arrive late to an interview, the interviewee may take it as a sign that she is not that important to you. When you make sure to arrive on time and with a welcoming demeanor, she will feel significant and respected. Instead of getting straight to business when the interview begins, attempt to break the ice with small talk about something you think may appeal to the applicant. By taking the first step toward getting to know your interviewee, you take the pressure off someone who is probably already stressed to the limit with anticipation. Once an easy rapport has been developed, she may perform better once you do get down to more serious topics.

7. Line of Questioning

When asking interview questions, use a positive and supportive tone. The idea is to draw the best response as possible from your subject and not to make her uncomfortable or defensive in any way. For example, ask simpler questions at the start of the interview so the subject has a chance to establish herself and become more confident before moving on to more complex or difficult questions. Avoid long and confusing hypothetical situations, accusatory questions or questions with a negative slant. To elicit strong and honest answers, try to keep things positive and allow sufficient time for the interviewee to develop her thoughts, even if the answers you're getting are not what you want to hear.

8. Personal Touches

Have an employee meet and greet each candidate who arrives for an interview. Introduce them to the people they will be working with and anyone they run into while at the office. A basic tour of the office and a walk around the premises is another way to show each person that they are being seriously considered as a potential hire. Walking into a strange place filled with strange people can be intimidating, especially when you will soon have to answer a barrage of questions that determine your future. A simple and warm introduction can take the edge off and make the rest of the process much easier to handle.

9. Before and After

Tell the candidate what to expect before beginning. There's no need to keep the interviewee wondering what to expect. Instead, tell her the basic idea of the interview process, what the questions will focus on and what you hope to learn. Once the interview is concluded, explain to her what she should do next and where she stands. Honesty can remove much of the mystery that often surrounds job interviews while erasing the nervousness that comes along with uncertainty. Try not to dismiss candidates from behind your desk. Instead, walk out with them so they leave with a positive feeling.

Monday, February 10, 2014

5 Advantages and Disadvantages of Software Developer Job

5 Advantages and Disadvantages of Software Developer Job 

No job is perfect. Every job has some advantages and disadvantages. If you are enjoying your job, that job is best for you. You should carefully choose a right career for you as it can make your life heaven or hell. If you have chosen for becoming a software developer, you must know the pros and cons of this career. I would like to share the advantages and disadvantages of software developer's job.

Advantages of Software Programming Job

1. Good Pay: As compared to other jobs and professions, software programming job's pay is high.

2. Portable Skills: You learn a lot of things like programming language, software tools etc. in one company and can apply that knowledge in another company. When you switch from one company to another, you also get a good salary hike.

3. Work Anywhere: You can work from anywhere. All you need is one laptop and the internet connection. Work From Home is a very good facility in this field.

4. Comfortable Working Environment: You work in a very comfortable environment. You always have access to fast internet connection. You always have air condition office, nice comfortable chair. You don't have to worry about the harsh weather conditions outside. Heavy rainfall, hailstorm, cold snow, hot or cold weather cannot affect your work.

5. Continuous Learning Curve in all directions: You always keep on learning new things in your office, in your project. Your knowledge continuosly increases with your experience. You always remain updated with the new technologies and inventions.

Disadvantages of Software Programming Job

1. Global Competition and Outsourcing: We live in a very well connected world. Every body in any corner of the world is well connected with each other through emails, messengers etc. There is great IT workforce in India which can do the same job in less money as compared to the developers in USA and Europe. Almost every IT company outsources its lot of work to India to reap benefits by utilising the talent of India and saves a lot of money. So, the competition in this field is global and you have to be very perfect to cope this.

2. You have to upgrade your skills continuously: Technology is changing every day. Everyday, there are new enhancements, everyday there is new invention. You have to keep yourself very active and updated otherwise you will be left behind in the race. You have to learn new thing everyday. You should learn to adapt with new things. Standing rigid with the old things will make you lose the competition. Keep on learning new programming languages and always add new thing to your resume.

3. Sitting Job: You have to sit tight to your desk and stare at your computer continuously. If this is not fine for you, you should not come to this profession. But today, other jobs are also becoming like this. So you will find this kind of scenario in each and every job. It can make you unhealthy very easily.

4. Age Discrimination: There is a lot of age discrimination in the software programming field. Many people think that a person above 40 would not be able to perform well. Preference is given to the young developers because it is assumed that they have fresh mind and would be able to solve the programming puzzles and tricks easily as compared to the old brains. Also young developers will cost less to the companies.

5. Long hours, Tight deadlines and no personal and social life: In IT field, you are bound to the tight deadlines and have to work for long hours and on weekends to meet the deadlines. Most of the Software developers have to sacrifice their personal and social life to make the deliveries on time. 

Friday, January 17, 2014

24 Frequently Asked Basic SOA Interview Questions and Answers

24 Frequently Asked Basic SOA Interview Questions and Answers

SOA stands for Service Oriented Architecture. If you are preparing for SOA interview, the following SOA interview questions and answers can be very useful to you. Basically, these SOA interview questions and answers cover basic concepts of SOA like services in SOA, characteristics and principles of services in SOA, loose coupling of services, contract, address and bindings in SOA, main benefits of SOA to the business and IT, difference between services and components in SOA, requirement of SOA to the business, pitfalls of SOA etc. Let's have a look:

1. What is a Service in SOA?

In the real world, a service is what we pay for and we get the intended service. 

Example 1 (from Real World): You go to a restaurant and order food. Your order first goes to the counter and then it goes to the kitchen where the food is prepared and finally the waiter serves the food.

So in order to order an item from a restaurant you need three logical departments / services to work together (counter, kitchen, and waiter).

In the same manner in software world, these services are termed as business services. 

Example 2 (from Software World): You go to Amazon to order a book. Different services like payment gateway, stock system, and delivery system come together to achieve your task. 

All the services are self contained and logical. They are like black boxes. In short we do not need to understand the internal details of how the business service works. For the external world it’s just a black box which takes messages and serves accordingly. For instance the ‘payment gateway’ business service takes the message ‘check credit’ and gives out output: does the customer have credit or not. For the ‘order system’ business service ‘payment gateway’ service is a black box.

2. What are the main characteristics of services in SOA?

Following are the main characteristics of services in SOA:

A) SOA components are loosely coupled. When we say loosely coupled that means every service is self contained and exists alone logically. For instance we take the ‘payment gateway’ service and attach it to a different system.

B) SOA services are black boxes. In SOA, services hide there inner complexities. They only interact using messages and send services depending on those messages. By visualizing services as black boxes, services become more loosely coupled.

C) SOA service should be self defined: SOA services should be able to define themselves.

D) SOA services are maintained in a listing: SOA services are maintained in a central repository. Applications can search the services in the central repository and use them accordingly.

E) SOA services can be orchestrated and linked to achieve a particular functionality: SOA services can be used/orchestrated in a plug and play manner. For instance, the figure ‘Orchestration’ shows two services ‘Security service’ and ‘Order processing service’. You can achieve two types of orchestrations from it: one you can check the user first and then process the order, or vice-versa. Yes, you guessed right, using SOA we can manage a workflow between services in a loosely coupled fashion.

3. What is SOA?

SOA stands for Service Oriented Architecture. SOA is an architecture for building business applications using loosely coupled services which act like black boxes and can be orchestrated to achieve a specific functionality by linking together.

4. What are Contract, Address, and Bindings?

These three terminologies on which SOA service stands. Every service must expose one or more ends by which the service can be available to the client. End consists of three important things where, what and how:-

Contract is an agreement between two or more parties. It defines the protocol how client should communicate with your service. Technically, it describes parameters and return values for a method.

An Address indicates where we can find this service. Address is a URL, which points to the location of the service.

Bindings determine how this end can be accessed. It determines how communications is done. For instance, you expose your service, which can be accessed using SOAP over HTTP or BINARY over TCP. So for each of these communications medium two bindings will be created.

5. Are web-services SOA?

SOA is a thinking, it’s an architectural concept, and web service is one of the technical approaches to complete it. Web services are the preferred standards to achieve SOA.

In SOA we need services to be loosely coupled. A web service communicates using the SOAP protocol which is XML based, which is very loosely coupled. It answers the what part of the service.

SOA services should be able to describe themselves. WSDL describes how we can access the service.

SOA services are located in a directory. UDDI describes where we can get the web service. This is nothing but the implementation of the SOA registry.

6. What are the main benefits of SOA?

SOA helps create greater alignment between IT and line of business while generating more flexibility - IT flexibility to support greater business flexibility. Your business processes are changing faster and faster and global competition requires the flexibility that SOA can provide.

SOA can help you get better reuse out of your existing IT investments as well as the new services you’re developing today. SOA makes integration of your IT investments easier by making use of well-defined interfaces between services. SOA also provides an architectural model for integrating business partners’, customers’ and suppliers’ services into an enterprise’s business processes. This reduces cost and improves customer satisfaction

7. What is a reusable Service?

It is an autonomous, reusable, discoverable, stateless functionality that has the necessary granularity, and can be part of a composite application or a composite service.

A reusable service should be identified with a business activity described by the service specifications (design-time contract).

A service’s constraints, including security, QoS, SLA, usage policies, may be defined by multiple run-time contracts, multiple interfaces (the WSDL for a SOAP Web Service), and multiple implementations (the code).

A reusable service should be governed at the enterprise level throughout its entire lifecycle, from design-time through run-time. Its reuse should be promoted through a prescriptive process, and that reuse should be measured.

8. Talking about Service identification, which approach between top-down and bottom-up methodologies encourages re-use and maintenance?

Since the top-down approach is business-driven it can be practical to separate the different concerns of business and IT on different plans, providing a common ground in between. So in most situations it the most appropriate if you want to improve reuse and ROI in the medium/long term. 

9. How can you achieve loose coupling in a SOA?

One strategy for achieving loose coupling is to use the service interface (the WSDL for a SOAP Web Service) to limit this dependency, hiding the service implementation from the consumer. Loose coupling can be addressed by encapsulating the service functionalities in a manner that limits the impact of changes to the implementation on the service interface. However, at some point you will need to change the interface and manage versioning without impacting service consumers, in addition to managing multiple security constraints, multiple transports, and other considerations

10. Do you recall any pattern which could be used to leverage loose coupling?

The Mediation pattern, using an enterprise service bus (ESB), will help in achieving this.

Mediation will take loose coupling to the highest level. It will establish independence between consumers and providers on all levels, including message formats, message types (including SOAP, REST, XML, binary) and transport protocols (including HTTP, HTTPS, JMS).

Architecturally speaking this means the separation of concerns between consumers and providers on the transport, message type, and message format levels.

11. The Service of a SOA should be engineered as stateless or stateful?

Service should be stateless. It may have a context within its stateless execution, but it will not have an intermediary state waiting for an event or a call-back. The retention of state-related data must not extend beyond a request/response on a service. This is because state management consumes a lot of resources, and this can affect the scalability and availability that are required for a reusable service.

12. What is composition of a Service?

Composition is the process by which services are combined to produce composite applications or composite services. A composite application consists of the aggregation of services to produce an enterprise portal or enterprise process. A composite service consists of an aggregation of services that produces another reusable service. It’s just like combining electronic components to create a computer motherboard, and then using that motherboard in a computer. Think of the motherboard as a reusable composite service that is a component of the computer, and of the computer as the composite application.

13. How do I integrate my Legacy applications with SOA?

Legacy applications are frequently at the core of your IT environment. With the right skills and tools, you need to identify discrete elements within your legacy applications and “wrap” them in standards-based interfaces and use them as services within your SOA.

14. How does the ESB fits in this picture?

The Enterprise Service Bus is a core element of any SOA. ESBs provide the “any to any” connectivity between services within your own company, and beyond your business to connect to your trading partners. But SOA does not stop at just implementing an ESB. Depending on what your goals are, you may want to use an ESB to connect other services within your SOA such as information services, interaction services and business process management services. Additionally, you will need to consider development services and IT service management services. The SOA reference architecture can help you lay out an SOA environment that meets your needs and priorities. The ESB is part of this reference architecture and provides the backbone of an SOA but it should not be considered an SOA by itself.

15. In SOA do we need to build systems from scratch?

No. If you need to integrate or make an existing system as a business service, you just need to create loosely coupled wrappers which will wrap your custom systems and expose the systems functionality in a generic fashion to the external world.

16. What’s the difference between services and components?

Services are logical grouping of components to achieve business functionality. Components are implementation approaches to make a service. The components can be in JAVA, C#, C++ but the services will be exposed in a general format like Web Services.

17. The concept of SOA is nothing new, however why everyone started to talk about SOA only in the recent years?

Yes, I agree the basic concepts of SOA aren’t new, however some technology technology changes in the last 10 years made service-oriented architecture more practical and applicable to more organizations than it was previously. Among this:

1. Universally-accepted industry standards such as XML, its many variants, and Web-services standards have contributed to the renewed interest in SOA.

2. Data governance frameworks, which are important to a successful SOA implementation, have well test and refined over the years.

3. A variety of enabling technologies and tools (e.g., modeling, development, infrastructure/middleware, management, and testing) have matured.

4. Understanding of business and business strategies has grown, shifting attention from technology to the people, cultural changes, and process that are key business success factors.

18. What is the most important skill you need to adopt SOA? Technical or Cultural?

Surely cultural. SOA does require people to think of business and technology differently. Instead of thinking of technology first (e.g., If we implement this system, what kinds of things can we do with it?), practitioners must first think in terms of business functions, or services (e.g., My company does these business functions, so how can I set up my IT system to do those things for me most efficiently?).It is expected that adoption of SOA will change business IT departments, creating service-oriented (instead of technology-oriented) IT organizations.

19. What are the main obstacles in the way of SOA?

1. Shortage of skills. 
2. Justifying the ROI of SOA projects. 

20. Can I buy an SOA or must I build one?

To move your organization toward greater service orientation, you need to take a balanced approach to building versus buying. To create the infrastructure for an SOA, you'll need the right commercial off-the-shelf software that complements (rather than replaces) your existing IT infrastructure. This is a “buy” statement. On the “build” side, you may also choose to access know-how and hands-on involvement to use these software products effectively and get the most out of them. This infrastructure and the associated tools can help you create the business services that run on your SOA. Again, there is some “building” associated with this. So the real answer is that you need a certain measure of both building and buying.

21. Do I need SOA Governance to get started?

A key aspect of successful SOA implementations is having business involved in the effort from the beginning. One of the values from SOA you can gain is improved Business/IT Alignment. SOA Governance supplies the decision rights, processes, and policies for business and IT to work together. After a service is deployed, there must be management aspects in place to control and monitor the service. You do not need a lot of SOA Governance to get started, but enough to work with the level of Smart SOA you are implementing.

22. What are SOA Entry Points?

To get started quickly with SOA, you need to select an initial project that focuses on a particular business opportunity that can be completed in a reasonably short time frame. The SOA Entry points are project areas that have been shown to provide business value in a timely manner. Each Entry Point provides a key SOA related solution:

People - collaboration improving productivity by giving employees and partners the ability to create a personalized, consolidated way to interact with others.

Process - optimize and deploy processes on the fly and monitor the effectiveness of the altered processes.

Information - improve business insight and reduce risk by using trusted information services delivered in line and in context.

Reuse - newly created and reusable services are the building blocks of SOA. Reuse gives users flexibility through reduced cycle time and elimination of duplicate processes.

Connectivity - although, in the past, connectivity has been a requirement, SOA brings new levels of flexibility to these linkages. The connectivity provided by SOA has distinct value on its own and as a building block for additional SOA initiatives.

23. What are the common pitfalls of SOA?

One of the most common pitfalls is to view SOA as an end, rather than a means to an end. Developers who focus on building an SOA solution rather than solving a specific business problem are more likely to create complex, unmanageable, and unnecessary interconnections between IT resources.

Another common pitfall is to try to solve multiple problems at once, rather than solving small pieces of the problem. Taking a top-down approach—starting with major organization-wide infrastructure investments—often fails either to show results in a relevant time-frame or to offer a compelling return on investment.

24. Is SOA really needed on your opinion?

SOA is not for everyone. While SOA delivers significant benefits and cost savings, SOA does require disciplined enforcement of centralized governance principals to be successful. For some organizations, the cost of developing and enforcing these principals may be higher than the benefits realized, and therefore not a sound initiative.

Wednesday, December 25, 2013

For Skilled Software Developers - A Journey from Employee to Self Employed (Entrepreneur)

For Skilled Software Developers - A Journey from Employee to Self Employed (Entrepreneur)

Are you a skilled and confident software developer who owns the guts of kicking away his/her secure and comfortable job and start his/her own business? Are you as a software developer want to be self employed and enjoy the sense of being entrepreneur? Well, the road is very rough and you will have to struggle a lot in your journey to reach your destination. If you feel you can do something different from the crowd, prepare a practical plan for you and go ahead. I am just trying to write down some suggestions which you should consider before typing your resignation letter.

1. Think twice before typing your resignation letter

Before you write that letter of resignation, think about why you want to become an independent software developer. 

A) Do you want to work from home? 
B) Do you want to travel? 
C) Do you want more money, fewer hours, or both? 
D) What are your main motivations for making this change? 

Write them down somewhere because chances are all of your goals will not be met immediately. When things get tough, that list will remind you of why you are doing this, and that can make the difference between giving up and success.

Above all, understand and accept that "going independent" means "starting a business," and a business is very different from a job.

Going independent can give you greater say in the kind of work you do. And in the world of software, there are many possibilities; you don't have to do exactly what you do at your current job. Consulting, development, products, training, and other services are all viable paths to independence. Make a list of everything you can do, everything you'd like to do, and everything you might be interested in learning how to do. Having that list will help prepare you to recognize opportunities when they arise.

Similarly, make a list of all the ways you can find and attract clients. When you make the leap, you'll want to be in a position where you have more offers than you can accept.

2. Securing your first contract is key

The first contract can be the hardest, or the easiest. It is not uncommon for someone to resign as an employee then turn right around and contract with their former employer, doing exactly the same job as before, just with a different financial arrangement -- but it is not guaranteed. Another option is to contact a recruiting firm and have them find you a position that you like -- and make the terms of engagement corp-to-corp. 

3. Diversify your business skill set

Your job responsibilities will include everything, not just coding. Going it alone means going it alone. You'll have to do all of the work that your current team and organization do for you. This applies to both technical skills and "soft" skills -- either you learn how to do it yourself, or you hire someone to do it for you. If you hire others to help you, you'll have to learn how to manage people at the very least, but ideally how to lead them. Communication skills may mean more to your bottom line than sheer coding talent.

4. Deliver exceptional service and quality

This may seem like an obvious platitude, but consider that the average office worker is productive only three to six hours per day, according to recent surveys. The rest of the time is sucked away in meetings, emails, social media, and various other nonproductive distractions.

When you are the business, you can eat Twinkies, drink Mountain Dew, and surf the Web all day if you want to. But chances are you only get paid when things get done -- so getting things done consistently, efficiently, and well will become paramount to the survival of your business. This makes Reddit a lot less interesting than a paycheck. Happy clients are key, and consistently delivering extraordinary results makes them happy.

5. Sweat the small stuff

Many tasks don't pay directly, but can lead to business failure (not to mention legal/tax trouble) if omitted. Accounting, cash flow, collections, contracts, liability insurance, and so on are easy to forget or postpone -- don't!

Other small things may suddenly matter, like being awake during business hours, answering your phone promptly, and having suitable clothes to wear to meetings with prospects and clients. The hip slacker image that works so well in your laid-back office job may not fly when you and only you represent the entire business. People will perceive you according to their inherent expectations, and you cannot control or change that -- but you can be aware of it, and prepare accordingly.

6. Always be marketing

Focusing only on the paying work in front of you and letting everything else slide is a good way to code yourself out of a job. Pay attention to additional opportunities with current clients, ask for referrals, continually prospect, and keep your pipeline full.

Marketing and sales are not evil; they are necessary. Even if all you have is a résumé on a job site, that is still marketing -- and the product is you. Even the best of clients can have sudden downturns; you do not want to be at the mercy of one client. If the vast majority of your income depends on one client, you don't have a business, you have a job.

7. Get organized

Since you are responsible for everything, you must be organized. 

Whatever you choose, get things out of your head and into the system, and review it consistently. It is far too easy to think that you can remember everything you need to be doing, and perhaps you can, for a while, but the effort is draining and wasteful. An organizational system is not supposed to be a straightjacket or a dictator; it is a tool. Apply your organizational system consistently to all of your areas of responsibility -- not just technical ones -- to ensure that you are always on top of everything that needs to be done.

8. Going independent is not a promotion

There is a huge difference between going independent and getting promoted to management. If you get promoted to management, you become responsible primarily for the work of others, along with a load of administrative issues that you may not enjoy. If you go independent, you get managerial responsibilities and keep all your technical responsibilities as well.

Many good programmers have been ruined when turned into managers; many excellent technical people are simply not happy in management roles. If this is you, that is fine, just be aware of it and plan accordingly -- perhaps by hiring an assistant or designating one day a week as "admin day." As an independent developer, you are both management and worker, and you must do both well to succeed.

9. Get out of your own way

Don't be your own barrier to business growth. At some point you will hit a limit of how much work you can do personally and still keep up with the business, maintain your health and family/social ties, and generally keep from burning out. You can raise your rates, but only up to a point. Learn how to delegate, sooner rather than later.

Many businesses that are otherwise doing well reach a tipping point where they fail because the person in charge cannot delegate, and that bottleneck strangles the business. If things are falling behind because everyone is waiting on you to do something, take this as a warning sign.

When you hit your limit, you can contract or expand. To do less, consider firing "bad" clients, raising your rates, and making better use of your time. To expand, consider hiring help, delegating or eliminating tasks, and diversifying your products and services.

10. Consider the product

Products have a distinct advantage over services: Products scale. You can only sell an hour of your time once, and it's gone, but you can sell a product over and over, even while you sleep.

Of course, products have their own overhead: First you have to write it, then you have to sell it. But once it is selling well, the only drain on your time is support, and counting your money. Consider building products (that people actually want) while supporting yourself by selling your services. If you can transform some of your services into products, so much the better.

11. Brand and network

People need to know about you. Whether you call it promotion or marketing or branding, the requirement is the same: Get the word out, with a consistent image and message about the kind of services and quality you provide. You can start a blog, join the local Chamber of Commerce, answer questions in LinkedIn groups, post instructive videos to YouTube, and so on.

Choose a few ways that you are comfortable with, and start. Be creative, use your imagination, find ways to stand out that represent you well, but above all make sure the channels you choose are populated with likely prospects. Try several approaches, track where your leads come from, and then concentrate on the avenues that prove fruitful.

12. Replace yourself

Eventually you may decide that you've had enough of being responsible for every aspect of your business; that's the time to replace yourself. You can replace yourself with one person, if it's the right person. More likely, your responsibilities will be divided among multiple people. This can be good, especially if the people you find share your philosophy and work ethic and are better at their jobs than you are.

Finding the right people can take a lot of effort, and you may have to go through a few to find the right one. It's best to test and fire early rather than invest too much time in trying to train or educate someone who is not up to your standards.

13. Take care of your primary asset

The primary asset of your business is you. If you become burned out, or ill, or your skills get out of date, your business will suffer. There are no sick days, there are rarely vacations, and deadlines don't care how you feel.

Be aware of new developments in your field, but spend R&D time wisely -- not only on things your clients want, but also on things that excite you.

Occasionally turn off the computer and go outside. Socialize with friends, spend quality time with family and loved ones, read a nontechnical book, and enjoy being human.

Most importantly, when the going gets rough, take time to recharge and remember why you started this journey. The payoff of time off to refocus is tremendous.

Wednesday, December 4, 2013

Very Important Last Interview Question: Do you have any question for me?

Very Important Last Interview Question: Do you have any question for me?

If you are going for any interview, you must know that at the end of the interview, after asking many questions from you, the interviewer will allow you to ask questions from him. Last question of the interview will be: "Do you have any question for me?". And, my advice is that you must prepare this very last question beforehand.

When the interviewer asks if the candidate has any questions and the answer is none it can be perceived as a low interest level in taking up the job offered.

The questions by the candidate should show a sound knowledge of the company and the overall responsibilities of the offered position. A confident candidate would always want to know more about the organization, in terms of work culture, growth prospects, organizational values, team work and an inside view of the job profile.

The following are the questions the interviewer would be happy to hear from an interviewee, because the interviewer feels this would be what a clear thinking, success oriented candidate would want to know.

Below is the list of the questions you must prepare to ask from interviewer at the end of the interview:

1. Is your company growing and what are the prospects of future expansion?

2. What difficulties do new employees experience in adapting to your company's environment?

3. What are the primary success factors of this role?

4. Might there be other ways I can contribute to the business with my skill sets?

5. Should I be successful, what are the opportunities for advancement?

6. What should I expect with regard to feedback?

7. Will I have an opportunity to create a development plan to be coached on throughout the year?

8. What emphasis is placed on teams working together?

Tuesday, December 3, 2013

26 A-Z Small but Important Tips for Cracking your Job Interview

26 A-Z Small but Important Tips for Cracking your Job Interview

Are you preparing for your job interview in your dream company? Best of luck!! Following are 26 small but important job interview tips arranged in alphabetical order from A to Z. Please go through all job interview tips once before appearing for any interview in any field for any position.

A – Anticipate key questions and have answers ready 

B – Bring the information you will need to fill out an application (references, dates, Social Security Number, etc.) 

C – Connect your past work experience to the present position you are interviewing for 

D – Don’t criticize your previous employer; it will leave a bad impression 

E – Eye contact with the interviewer shows confidence 

F – Fill in all blanks on the application (except the salary blank) 

G – Get there 15-20 minutes early; NEVER be late! 

H – Handshake should be firm 

I – Incorporate specific examples of your successes 

J – Job responsibilities that you excelled at in your past experience should be discussed and related to the position you are interviewing for whenever possible 

K – Know the directions to the building (drive a practice run if you must) 

L – Legs should not be crossed; maintain open/receptive body language 

M – Mail them a thank you letter afterwards. Make this letter short, professional, and to the point. Thank them for their time and that you look forward to the opportunity to become part of their organization 

N – NEVER LIE! Answer all questions truthfully and frankly, but don’t “over answer” either 

O – Opportunity is the focus…not money. Be prepared to discuss the opportunity and how you can make a positive impact in the company. Never focus on how much money you can make or ask about financial compensation during the interview 

P – Professional attire is a must – even if you know the environment is casual, the interview is formal 

Q – Quality of work and a strong understanding of the core skills you are interviewing for are quintessentially important. 

R – Research the company and have questions prepared about it 

S – Sit upright, look alert and interested at all times 

T – Take a portfolio to take notes in (blue or black ink only) 

U – Update your resume and have 3 references before you go on the interview 

V – Vacation days should not be discussed but the value you bring to the company is a great focal point 

W – Wear a watch; even if it is broken, it will give you the illusion of being organized and prompt 

X –Xerox multiple copies of your resume in case you meet with more interviewers than you had expected 

Y – Yes or no answers to questions are not good enough; providing a short explanation of your answers proves your knowledge and experience 

Z – Zero in on what benefits you bring to the company 

Wednesday, October 17, 2012

7 Points of arrogance you should avoid at your workplace

Whether you’ve snagged your first job or shifted to a new one recently, you need to follow work etiquette. Here are the habits, attitudes and behaviour patterns that are a strict no-no at the workplace.

1. I don’t need to be punctual

Timing is essential. You’re a professional now and a ’sorry, my brother spilt milk over my homework’ excuse isn’t going to work. Your assignment should be finished before the deadline, with enough time to spare, so that you can polish it. Unlike college, a ‘C’ grade-even once-does matter. If you disappoint your seniors, getting another chance is going to be tough. If your office doesn’t run on a 9-to-5 schedule, ensure that you have a fixed time for coming in and leaving, so that your colleagues can rely on you to be available during those hours.

2. I want everything, now

Instant gratification may be your buzzword, but it’s not going to work at office. You cannot accumulate five years worth of experience in one year, nor can you get the hefty salaries your senior colleagues do. You will only get what your employers believe you’re worth. “A mistake often made by freshers is that they run after high-paying jobs. In the initial stages, don’t mix career and money.

Your priority should be the job profile based on your capabilities, which will help you hone your skills and grow. Once you’re established, the money will come. Just putting in your best may not be enough. Your efforts will also have to be fruitful. If you expect more compensation, remember that the worth of the individual should increase along with the cost.

3. This is all I’m going to do

If you stick rigidly to your job description, you may miss out on opportunities to be noticed. Take up tasks beyond the routine ones, especially those that can demonstrate your untapped talents. This also proves that you’re willing to take initiative.

If you are new, you may get saddled with jobs that others don’t want or hours nobody else is willing to put in. If you grumble at being given extra work, it may put off your superiors. Accept projects on the basis of where you want to be after three years. If you want to replace your boss, you will have to work more than you would to justify your salary.

4. I’m the only one who made it a success

No man is an island, especially not in crowded cubicles. In an office, you need to work as a team. If you do well, give credit where it’s due, especially to your juniors. Even if you don’t get along with someone, be polite. There’s no place for anger or tantrums at the workplace.
Remember, your electronic mails are being sent through your employer’s server, so bad-mouthing someone on mail or chats in the office could lead to an embarrassing fiasco. Don’t crib about your colleagues’ work profile or the fact that they are favoured. Your talent cannot remain hidden for long, neither can other people’s incompetency. You’ll look like a fool if your own work falls short of the mark.

5. What’s a network?

You may be a genius, but there will be times when you hit a roadblock. This is when your network of peers will come to your rescue as you can take their advice. It also helps you stay abreast of the latest issues in your field. Keep in touch with college mates, mingle during conferences and functions, and join a professional networking site.

However, ensure that you don’t mix personal and professional lives. Avoid adding colleagues and bosses to your friends’ list on social networking sites. Even if you don’t post an inappropriate message about your workplace , there’s no way of ensuring that your friends won’t.

6. I know everything there is to know

No job is secure forever. The business landscape is changing constantly and if you don’t want to be a dinosaur, you’ll have to upgrade your skills regularly. You need to stay on a par with colleagues and others vying for your job. Don’t expect past accomplishments to suffice. Learn constantly, especially from your mistakes. If a senior corrects you, don’t sulk or complain. You’ll not only exasperate your boss, but end up repeating your mistake and never learn.

7. I’m the best, I’m irreplaceable, I deserve that promotion

If you believe you are the only one who can do the job right, back your conviction with accomplishments. There’s a difference between boasting and delivering. This doesn’t mean that you shouldn’t promote yourself, but do it subtly. Before you jump at the chance to be promoted, ask yourself: am I prepared for it?

A promotion not only means more professional responsibilities, but also changes in personal life. Make sure you are ready to shoulder these.

If you aren’t, the step may backfire and destroy chances of future promotions. Don’t promise to get something done without ensuring that it is achievable. In the early stages of your career, there are more options as there are more jobs, but these reduce as you move up.

At a senior position, you need to be stable in a job for 2-3 years and learn everything about the company before you opt for a promotion. Jumping too soon may set your career back by 4-5 years.