Welcome,Guest

What we are saying!!

top 10 progarmming.png

We are almost halfway through 2017, and it’s always exciting for web developers to know which programming languages have been the best picks lately in the programming world. In this blog, I am unveiling 10 most preferred languages in 2017 so far. Please note that the top 10 languages I am going to list below are strictly based on GitHub’s recent data and TIOBE Index for June 2017 - the most credible sources to track the popularity of programming languages.

Let’s Begin!!!

Java

Java, an open-source language that’s been around since the 1990’s, allows developers to “write once, run anywhere”. So, you can run compiled Java code on all platforms without having to recompile. Java is the product of Oracle corporation and is widely used for creating server-side applications, video games, mobile applications and smart TV applications. Since both large and small businesses use applications written in Java, this language is high in demand and ranked among the top ones by Tiobe Index and Github.

Java is also used by most Android app developers. Some top Android app examples of Java are Temple Run, Candy Crush Saga and Angry Birds. It doesn’t end here as Java is also used everyday by many airlines, government agencies and Fortune 500 companies.

Java’s Growth in 2016: 63%

Python

First released in 1991, Python is a widely used open-source, high-level, general-purpose and dynamic programming language. Python has witnessed most of its growth in the past five years (7.0%). Python is popular among developers for readability and easy learning. Whitespace indentation in Python allows developers to delimit code blocks without using curly brackets or keywords, which emphasizes code readability. If you are new to programming, you can pick Python as it is one of the most beginner-friendly programming languages.

Some of the top applications that have been built using Python are YouTube, Reddit and Instagram. You can also use Python for scientific computing, web development and 3D rendering.

Python’s Growth in 2017: 54%

Click here to learn why Django is the best Framework for Python

PHP

PHP is also an open-source and very popular programming language used for server side scripting. Although PHP was primarily designed for web development, it’s also used as a general-purpose programming language. PHP first came out in 1994 and originally stood for personal home page. It’s now taken as the abbreviation for Hypertext Preprocessor. Since PHP has a low learning curve, new programmers can also develop web applications in quick time.

PHP powers more than two hundred million websites, including the popular ones like Yahoo, Facebook and Wordpress. Developers can easily deploy PHP on most web servers on almost every operating system and platform.

PHP’s Growth in 2016: 43%

JavaScript

JavaScript is a high-level, dynamic, and interpreted programming language, which is widely used to make web applications and add interactive elements to the webpages. The programming language allows developers to create animations and have better control over the web interface. All modern web browsers support JavaScript without forcing you to install plug-ins.

JavaScript has been the top language on the TIOBE index for a few years, but it’s currently ranked seventh in the list of top 50 programming languages. For many developers world over, JavaScript is the numero uno language for front-end development. However, the advent of Node.js made it possible for developers to use JavaScript for backend as well.

JavaScript’s growth in 2016: 97%

C

C, a general purpose programming language, is considered to be grandfather of all modern languages. Emergence of C dates back to 1970s and it has served as the base of many of today’s languages such as Java, C++ and Python. Although learning curve of C is large, using C makes it easier for developers to pick modern languages like Objective C, C++, PHP, etc.

C helps developers get complete control over software and is considered to be the backbone of many of today’s most popular operating systems such as Windows, OSX, and Linux. Flexibility of use for memory management is one of the top virtues of C. The TIOBE Index currently ranks C at the second position, whereas Github ranks it at the ninth position.

C++

C++ is a general purpose programming language which could be considered as C with more features. In contrast to C which is used more for operating systems, C++ is used for higher level applications like accounting software or video game engines. C++ also offers support for object oriented programming, which is not the case with C. Many developers see C++ as the best pick for building web browsers, computer graphics drivers and financial trading algorithm.

Call of Duty, Halo, and Fifa are some top examples of C++. Since C++ is robust and fast, many Wall Street firms use it to trade thousands of shares in no time. Using C++ will help you get the qualities of both high-level and low-level programming language.

C++ growth in 2016: 43%

Ruby

Ruby is a general-purpose and object oriented programming language that gives rise to fast development and use of fewer lines of code. Although Ruby came out in 1990s, it rose to fame after the emergence of Rails, a high-in-demand framework for Ruby. Ruby on Rails is apt for extremely intuitive web development. A dynamic type system and automatic memory management are other virtues of Ruby. Mostly startups and mid-sized businesses use Ruby on Rails because Rails is often used as a website prototyping language.

Similar to Python, Ruby is also easy to learn. Ruby is ranked fourth on Github and 10th on the TIOBE index. Metasploit and Twitter are two popular examples of Ruby.

Ruby’s growth in 2016: 66%

C#

C#, developed and released by Microsoft in the early 2000s, is a general purpose, object-oriented programming language. C# is an evolution of C and C++. Therefore, if you have previous experience of using C and C++, learning C# will be much easier for you. C# is used for numerous Microsoft products that are powered by .NET framework. You can also use the programming language for standard Windows software development and server side web applications.

C# is not as popular as Java or PHP is, but it’s been rising in popularity every year since its release. Since Microsoft is the creator of C#, the language is used to run several Windows products, like Bing and MSN.


C# growth in 2016: 88%

Swift

Swift, a product of Apple Inc., is a general-purpose, multi-paradigm, compiled programming language that debuted in 2014. Apple developed Swift for iOS and OSX applications.. Ever since Swift came out in the tech market, it has witnessed tremendous rise in demand. Swift could be a good choice for creating an intuitive app since it adopts the best of C and Objective C. Swift is minimalist, powerful and simple.

Swift’s growth in 2016: 262%

GO

Go is an open-source programming language created by Google in 2007 for simple, efficient, and reliable software development. GO is also popular for web servers, APIs, minimal web application frameworks, etc. Although GO is currently ranked 15th on the TIOBE Index, I have included it in the list considering it was ranked 65th on the TIOBE Index a year ago. The language has skyrocketed in popularity and is now ranked 10th on Github.

With GO, you get C-like semantics, modern data structures, memory management and high performance with fast compiled binaries. TIOBE Index also announced Google’s GO as the most popular programming language of 2016.

Click here to know about companies using GO around the world

GO’s growth in 2016: 93%

All the languages listed above have been the top choice of developers in 2017 so far. However, before you choose a language to kick start your programming career, carefully analyze the needs and requirements of app development, web application or web design.

Have you ever used a programming language before for a development project? If yes, which one? Which programming language suits your need and interest the most? Please share your views in the comment box below.

Last modified on
Hits: 26366
0

Posted by on in Uncategorized

mobile.application.development.companies.jpg

Image source: clavax.blogspot.com


Read this blog to know about 5 best cross platform mobile app development tools. But before we go ahead with that, let’s understand why we need a mobile app in the first place. And then, why particularly cross platform mobile apps.



Since more and more people are now preferring smartphones over PCs to access the Internet, having only a website to grow your business is no longer enough. However, building a native app for each mobile platform is very time consuming and expensive. Besides, you need to write separate source codes for individual mobile platforms. And, you can actually use a very little of the code that’s already been written.


So, developers now think that it’s a good idea to go for cross platform mobile app development. For simple reasons, it makes your mobile app compatible with multiple mobile operating systems and enables to reuse the code that’s already been written. Besides, it involves low maintenance cost since you need not to offer support for multiple mobile platforms.


Click here to learn the distinction between cross platform mobile apps, native apps and hybrid apps.

Now that we know about the virtues of cross platform mobile app development, it’s paramount you know about the most effective and easy-to-use cross platform mobile app development tools. So, let’s move on to the most important part of this blog.

5 Best Cross Platform Mobile App Development Tools


#PhoneGap


678download.jpg



Image source: www.apps24x7.com


The reason why PhoneGap, aka Apache Cordova, has gained immense popularity among developers is the ease of building cross platform mobile apps. No extra skills are required, your own development team is well capable of using it. This framework involves the use of standard web technologies such as HTML5, Java and CSS3 for building a cross platform mobile app.


Key Features of PhoneGap are as Follows:


  • Easy to use and comes packed with many libraries

  • Apps work uniformly well on multiple platforms

  • Robust backend system increases the speed of app development

  • Offers support for various application programming interfaces

  • Since PhoneGap is open source, it comes for free

  • PhoneGap based apps are easy to manage

  • PhoneGap apps sport top-notch UI and enable seamless navigation

  • Easy distribution and installation


#Sencha


tumblr_inline_nz72pa8TYg1sdke9x_500.png

Image source: appstedltd.tumblr.com


Sencha, a tool to develop cross platform mobile apps in HTML5, is known as a time saving tool in the mobile app development industry. It also gives rise to high productivity. Besides, Sencha allows access to Sencha Architect, Sencha IDE Plugins and few others to further ease the process of cross platform app development. However, Sencha Ext JS 6 continues to enjoy the most widespread usage.


Once you make the HTML code ready using Sencha, the next step is to convert it to both Android and iOS. For conversion into Android and iOS, you can use a translational tool like PhoneGap.


#Xamarin


HIxamlo.jpg

Image source: plus.google.com


Xamarin is a brilliant tool to use for building apps for iOS, Windows and Android smartphones. Xamarin requires developers to use the C# programming language to develop robust cross platform mobile apps. The language runs on the .NET Common Language Infrastructure (CLI). Xamarin is popularly regarded as “write once, run anywhere” tool.


Native API access and sharing code compatibility add to the effectiveness of Xamarin. Xamarin has recently partnered with IBM, Xoriant and Microsoft. Xamarin 2, which entered the tech market last year, is one of the most used cross platform app development tools.


#Unity3D


Unity-3D.jpg

Image source: thinkapps.com


Unity 3D is a very popular tool for developing 3D games. Unity supports three programming languages: C#, JavaScript and Boo. You can also go for millions of ready-made assets in the Asset Store and an online community. You add awe-inspiring graphics to your game using Unity3D. Besides, the game engine significantly reduces both development time and cost.


Unity 3D offers a single integrated development environment for all platforms. Developers can easily learn how to use Unity3D through numerous video tutorials offered by the company.

#Cocos2d

Image result

Image source: android.app-liv.jp


Cocos2d is also a popular tool for gaming apps and other interactive programs. However, unlike Unity 3D which can be used for both 2D and 3D game development, Cocos2d allows development of only 2D games. Developers can use any language among C++, Javascript, C#, Xcode & Objective C, and Python, to develop a 2D game using Cocos2d.



Cocos is open source, therefore does not cost anything. With Cocos2d, you can build games for multiple mobile platforms using the same code base and making a few platform-specific adaptations for each one.



Cross platform mobile app development is becoming popular due to low cost, high productivity and no headache of maintaining mobile apps for multiple platforms. Though, cross platform apps do not completely eliminate native apps. Performance of native apps is better than cross platform mobile apps as they are specifically made for individual mobile operating systems.


What’s your view on cross platform mobile app development? Anything you think I missed on popular cross platform mobile app development tool? As always, your views are vital for us, please share them in the comment box below.

Last modified on
Hits: 21501
0

HTML-css-Javascript A front-end developer often wonders about what to do next after having mastered HTML, CSS and Javascript. HTML is a markup language that is used to create static sites, whereas CSS is a styling language that is used to set the visual style of web pages and user interfaces written in HTML and XHTML. Javascript, on the other hand, is a dynamic programming language that supports object-oriented, imperative, and functional programming styles. Now that you know the basics of web development, the next big step is to learn PHP and MySQL web development. But why?


PHP is a brilliant scripting language you can use to create interactive websites, and MySQL is a database management system which opens gates to highly desirable web assets, like email accounts, blogs, content management systems etc.

Let’s talk about why PHP is important

Having an interactive site brings a plethora of benefits to the owner. And what could be a better language than PHP for creating an interactive website or app that gives rise to consumer communication and paves the way to establish a strong relationship with them. As a web developer, you will find that it’s very easy to learn PHP and parse its syntax. Below are some important advantages of learning PHP:


  • Helps create dynamic pages with customized features.

  • Ensures stability and cross-platform compatibility.

  • Eliminates the need of separate coding for PHP since it is well capable of decoding HTML.

  • It’s easy to incorporate PHP into a code generated by WYSIWYG editors.

  • No need to rewrite every line of HTML in a programming language.

  • Reduces cost and increases efficiency of the websites or applications.

  • PHP is interoperable with multiple operating systems.

  • All the components of PHP are free to use since it is open source and is developed and updated by a community of developers world over.


You can flawlessly meet specific requirements of clients since PHP can be easily customized. PHP is extensively used for creating e-commerce sites due to its ability to execute all the demands for ecommerce development. It’s not wrong to say that creation of interactive websites, high-end web development and online application development become a doddle with PHP. Moreover, PHP gives unlimited control over your web server, like processing a credit card, extracting data from a third party website etc.

Let’s now move on to one of the most famous database management systems called MySQL


MySQL is a relational database system and is widely used as the preferred database solution for websites due to its small size and speed. It’s easy to use, secure, powerful and scalable. Even a few simple SQL statements are enough to build and interact with MySQL. Benefits of MySQL are as follows:


  • High speed: Database professionals can easily configure the MySQL database server specifically for particular applications. MySQL is well capable of meeting the requirements of any system, be it a high-speed transactional processing app or a high volume website.


  • High Availability: MySQL guarantees high availability with a gamut of top-notch options, ranging from high-speed master/slave replication configurations, specialized Cluster servers offering instant failover, to third party vendors offering unique high-availability solutions for the MySQL database server.


  • Scalability and flexibility: Flexibility is one of the great features of MySQL. Since MySQL is open source, it enables easy customization for the clients who demand addition of certain requirements into the database server.


  • Safety and reliability: MySQL offers highly secured environment for the data stored in the database server. With encrypted database passwords, it ensures that only authorized users are able to access to data stored in the database server. MySQL also makes it possible to create physical backup and full and point-in-time recovery.


  • Cross-platform support: MySQL can be installed in all major operating systems LINUX, UNIX, Windows, Solaris etc. It also flawlessly runs with several development interfaces. like JDBC, ODBC, Python and many more.


  • Comprehensive support for every application development need: Owing to the comprehensive support for every application development need,MySQL has carved a niche for itself in the tech market. Support for stored procedures, triggers, functions, views, cursors, ANSI-standard SQL and more can be easily found within the database. Connectors and drivers ensure that all types of applications can make use of MySQL as a preferred data management server.


Both PHP and MySQL are web-oriented, and PHP has special inbuilt features to communicate well with MySQL. Facebook, Yahoo! and Wordpress are some of the popular examples of PHP and MySQL web development. They work brilliantly together and provide one of the fastest ways to deliver web pages. For a front-end developer who has already learnt HTML, CSS and Javascript, the next big step is to learn PHP and MySQL.

As always, your inputs are vital for all our readers, please share them in the comment box below.

Last modified on
Hits: 32144
0
b2ap3_thumbnail_Why-to-outsource-your-web-development-projects.png
source: http://metataggsolutions.com

Having a website is a top priority for nearly all businesses in modern times. A website not only helps generates more business, but also improves customer service and brand value. Now that 3.17 billion people have access to the internet, online presence is paramount for every business - irrespective of their sizes - to increase sales and establish a good foothold in the market. However, there is often confusion to choose between in-house web development project and web development project outsourcing.

 

In this blog, I am shedding light on three top reasons as to how outsourcing your web development project is always better than in-house web development: Cost, Time and Quality

 

  1. Cost:

By outsourcing a web development project, you shell out much lesser money than what you are required for in-house web development.

  • You are not required to manage human resources, hire a qualified staff, pay them salaries and several employee benefits.
  • Web development outsourcing also eliminates the need of buying expensive hardware and software.
  • You get SEO/marketing specialists at a very economical price to draw high traffic to your website and earn high ROI. 

 

Cost is important to every business, no matter how big or successful it is. By outsourcing your web development project, you save a lot of money and take the burden off your shoulders to get the end result.

  1. Time:

Web development outsourcing saves you a lot of time, allowing you to focus on important business related tasks.

  • You need not to waste your precious time hunting for developers.
  • No need to hire trainers and allocate a period of time to get the developers trained to get acquainted with latest tools.
  • Since you outsource your web development project to a company that has experienced developers with a good track record, you get your website developed in quick time.
  • You save a lot of time that is often wasted on addressing employee concerns.

 

If your website witnesses sudden surge in traffic, you need not to worry as all will be taken care by the outsource company. It saves you a lot of money that you otherwise spend on web scalability.

  1. Quality: 

The main purpose behind developing a website is to increase user engagement, sales and numbers of visitors. All these goals can be achieved if your website is developed using latest tools, has a nice UI and is highly interactive. Outsourcing your web development project ensures top-notch quality of your website since expert developers take on your project and incorporate all the important features into your website to make it a big success.

  • Outsource web development company deploys experienced team of designers, developers, and marketing specialists to yield good results for your web development project.
  • Outsource company keeps abreast of latest trends and best cases to help your website reach specific goals.
  • Helps improve corporate identity and search visibility of your brand.
  • Experience in web projects helps you get more customers through marketing campaign and implementation of conversion optimization strategy.

 

You can also find online project management tools, like FindNerd and Jira, in tech market to hire a team of developers and effectively manage your web development project without facing hassles that one usually faces with in-house web development team. Offshore web development project management is hard to manage, but online project management tools come with intriguing features like session tracker, flawless invoice generation, sprint and many more to ensure trouble free project management. Moreover, project managers can easily check the status of their projects from any corner of the world 24x7 and stay relaxed as far as web development management and timely completion is concerned.

 

After considering all these benefits of outsourcing your web development project, it makes enough sense to go for it without a second thought. In addition to saving you both money and time, web development outsourcing gets your business more customers and bolster your coffer.

 

Please share your vital inputs about web development outsourcing in the comment box below.

 

Last modified on
Hits: 14659
0

Posted by on in Uncategorized

                               Lost time is never found again - Benjamin Franklin

 

Time Tracking plays a pivotal role in Project Management and is directly connected with the success or failure of a project. When we talk about time tracking it not only means time management but also refers to effective resource management within the stipulated time frame. Here time tracking is crucial as it can help us to track vital stats like Real-Time Progress of project and how productive the employee is. Prioritizing tasks is the need of the hour. But along with all these, there is one more ingredient without which Project Management is just like "sheep without a shepherd”. The missing ingredient which I am pointing about is Invoicing.

 

And yes there exists innumerable tools for attaining all this information in one place. Here we are talking about one such tool, FindNerd.

 

FindNerd is a complete Project Management and Task Management Tool with core features for Time Tracking and Invoicing.

 

Suppose you want to track the progress of a project. What if you can view the number of hours an employee has worked on a particular task as well as desktop screen-shots of employee with a nice graph showing active as well as ineffective time period. Such a sigh of relief it would be for the client as he/she can accordingly pay for the amount of time spent on a task or maybe a company can charge its client more as the estimated time was not enough for completion of task. This coupled with invoicing makes FindNerd a complete tool for tracking project costs.

 

A system where the client is equally involved and engaged with the team in order to fetch maximum benefit in a short span of time. Proper management is also the key to success and that can only happen when you know what and how you want it. What if the user can view proper reports spanning a wide array of fields like daily, weekly, total monthly hours etc worked. 

 

One of the great features I like about FindNerd is it's Reporting feature. It allows you to generate instant and clear view of hours spent by the whole team or individual team members on a project. You can check hours spent in a day, week or month, you can validate the work done by seeing the screenshots of members' screens taken on a preset frequency. All that gives you a good view of productivity levels, time and resource management and eventually let's you know exactly what are you paying for.

 

This combined with an intuitive interface gives a better insight of the project. Raising invoices and the ability to pay directly from the application provides an easy way for the clients to pay for the work as well as for the vendor to track payments. FindNerd incorporates all these features and brings to you a complete package without any hassle. It respects your privacy time and money Importance, So all you need to do is just fire the browser and open FindNerd.

 

The product is phenomenal considering the fact that project management to many people seems complicated and time taking. Fret not because FindNerd makes sure your precious time is never lost. Emphasis has been given on the design to make sure it is soothing for your eyes as well as loads in a jiffy.

Last modified on
Hits: 2617
0

Posted by on in Uncategorized

I am a Sales guy in my present life. Before that I was a project manager, project lead and a developer. In the last 15 years, I’ve been part of many software projects in various capacities; seen some success stories and seen a fair share of failures as well. I’ve been asked to write this article based on my experience with various projects, clients from different geographies. Before I started to write this, I thought of Googling what other people have said on the same topic. I was overwhelmed by the number of articles, studies and research papers I saw. Wow! I wondered if there is anything new for me to say that has not been said already. When in doubt, go to the BOSS (who is always right). He reminded me to write my experiences. So, here I go.

 

Before I actually start on the reasons, let me share one peculiar thing that I found in my study of already available material. Most of the articles and studies available on the subject, focus majorly on the reasons for failure on the vendor’s side. In my experience, I have seen that both the clients and vendors can work very hard to fail the project. So, here’s my angle to attack this story. Developing of software product is a journey that starts from idea to Go Live to maintenance. The cause for failure can be inducted in this journey at any stage by any stakeholder. 

 

I’ve said earlier that right now I am a Sales guy. Every now and then, I get a chance to talk to a new potential client. I get to hear about their ideas for the development of new softwares. In today’s world softwares are not only developed by companies to help in their operations, but to be used by end users directly. These softwares can be in the domain of social applications, entertainment, e Commerce, education and what not. Many a times the client is just a person with an idea and not a company trying to develop something. Most of the time, the idea already have a competitor product available in the market. Most of the time, the person has the idea, maybe has a little money with himself, has no concrete financial plan, but is very passionate about the idea. And the best thing is that more often than not, the person would not have given a deep thought in documenting the idea, giving a shape to it. It is something floating in his head.

 

  • An individual (with an idea)
  • MINUS market research 
  • MINUS documentation of idea 
  • MINUS positioning of idea 
  • MINUS financial plan 
  • EQUALS Recipe for disaster from very start

 

I can see at the beginning only that this project will fail, not in developing the project, but in taking it to a success. 

 

What do I do as a Sales guy? Do not put my hand in it? But I have my targets to fulfill and more often than not I get these kinds of people only. Most of the sales guys will take the project. They will take it for whatever money the client has. Why leave the $$$ that he have, even if one know that those are not enough for his product to be a success. In nutshell, such projects are doomed even before they start, even if the project is developed successfully. In six months after launch, the product will be nowhere to find. And many such projects will never see light of the day. In the middle of the development only, client will realize that his idea was not so great, or his preparation was not so great or he is not as equipped as he thought he is to compete. So, the project is dropped. 

 

So let us now consider that the client is well prepared. He has documented the idea, done the market research, positioned the idea well (or at least have a clear idea of how he wants to do) and most important, have the finances available. I am now diving into the area where all the other researches have already published a lot; on the vendor’s side. 

 

What is the fascination of doing projects in a fixed price? In all these years, I failed to understand clients’ fascination to get the vendors to commit to a fixed price. It is important to say here that I am not against fixed price model, at all. You want a small update to some existing work, it is well defined, fixed price is okay. You want a small application to be developed, it is well defined, fixed price is okay. I have a problem with clients who think they are building a huge project, who know there are multiple different parties and stakeholders involved, multiple different integrations involved, where project is expected to run more than 6 months. In today’s world, industry is not following waterfall model any more. Nobody is spending or willing to spend months in requirements definition and documentation. Nobody is willing to spend months in analysis and system design. Still there are people who want to have full end to end turnkey engagements and expect it to happen in a fixed price model. Please take a note, budgeting a project is different from having a fixed price on a project. Budgeting for a project is paramount, but does not necessarily mean that there has to be a fixed price model for the project. In today’s world, things are changing rapidly. Every 3 months, there is a 2.0 of something. There is a 2.0 of even what and how end users want in every 3 months. The focus in such projects becomes “what is the bare minimum needed to adhere to scope” rather than “what’s good for the product”. When your project is running for a year, the world is changing on the sidelines, and you are bound to be affected by those changes. Such projects will have less scope for flexibility; and in today’s rapidly changing world ability to be flexible and ability to adapt the change is the key. In such a scenario, clients who have huge projects and want to tie vendors in fixed price model are doomed to fail. Vendors will succumb to the clients’ pressures for fixed price model. But such projects will always run into problems. So Dear Clients, we know you love to have a fixed price, but then be prepared to resist your temptations for change, be ready to resist your inspirations from what is happening around you. We know this is not possible. 

 

But the book of software engineering has a term to handle this, “Change Request Management”. It’s a SHAM!!! Believe me, it’s a SHAM!!! Even if the vendors understand it, even if the Client understand it (which happens only in dreams), people spend hours analyzing these, debating these and all that effort goes unaccounted for, and more often than not the debates happen because the first effort is to try and push this idea out or be considered as a Change Request. Hours of effort from multiple people go in establishing whether it is a Change Request or not and afterwards people actually start working on it. A big LOSS, from where I see. Managers are living their life on it. Does the project benefits from it? Project does not, only one or the other party benefits from it. Project does NOT!

 

So, budget for the project, budget for the scope, budget for the modules, budget for the tasks and budget for the people but stay away from Fixed Price. That will give you flexibility to move the budget where you want to focus more. That will give you the flexibility to change and adapt to the changing needs of the world. That will help you to make better decisions in favor of the project. There are better things to hold vendors’ necks for than Fixed Price. 

 

Most clients do the fatal mistake of thinking that just by hiring a correct vendor their job is done. It is not. Do not see this as “offshore development”, see it as a partnership of “onsite-offshore” engagement. It is better to have a combination of team at onsite as well as offshore. Manage some parts onsite and some parts offshore. Outsourcing everything offshore may not be a very good idea. At the very least, have one technical head onsite. If you can’t find one, your vendor will be more than happy to ship one, to be with you to share your dreams. So remember, it is a marriage between onsite and offshore. You need people on your side as well. 

 

Another mistake clients do is to put their entire focus on choosing the vendor company and then letting the company choose the team. Treat yourself not as a client, but as a part of the team. Participate in not just selecting the vendor, but selecting members of your team as well, even in the offshore team. Yes, it is important. Your project is going to be in the hands of these people. The project will be as good as the team is. So, talk to them, select/reject them. Be ready to change them, if required. You do not need a team of all rockstars. You need Horses for Courses. Your project will have different kinds of needs for skills and skill levels. Choose people with appropriate skills and experiences. A good mix of skills and experiences is what required to get all different kinds of tasks done in the project. If you choose the right team, there is a great chance that you will have a successful product. If you do this, you will get a chance to speak to everyone on the team and this will ensure that there are no communication problems (which happen all the time with offshore teams and studies put communication problem as a key problem for failure of offshore projects). 

 

Project manager is a key person on your project. It is very important that you choose the right guy here. He is your eyes and ears in the offshore team. You get the right guy here, all else will fall in place. He is YOU getting your job done. So, pay highest level of attention if getting the manager for your project. At the same time, do not get too many managers on the project. Get more hands who will actually work, produce and only optimum heads to manage them. Getting the balance right, is important.

 

Another aspect to pay attention when you choose your vendor is to know how strong their HR team is. Will the vendor’s HR be able to provide the required skilled people for your project? Do they have the availability of the people? If not, do they have the strong HR processes to get the people on-board quickly? Do they have the training and development processes to get people trained for your project? Look for this factor. 

 

TOOLS is the final thing that you need to make sure success of your project. Make sure that your vendor has and use all the different tools that are required to run an offshore project. You can not do the fatal mistake of treating emails as the tools for your project. You need various tools for communication, collaboration, knowledge base, task management and planning, issues management, resource and effort tracking, code repositories, virtual meetings. If you and your teams does not have these on the project, you will never be able to enforce and ensure transparency. If you have the transparency, you will always be able to make the right decisions to take your project in right direction. 

 

Finally, you do not offshore because you do not have time. You offshore, because that brings optimal cost/quality balance to your project. You have to give time even if you offshore the project. Be prepared to give that time. 

 

You tick all the factors given above; your offshore project will never fail! 

Last modified on
Hits: 3304
0

In IT Industry, Product Owners- be it the Project Manager or Business Analyst, are mostly from development background. In general, developers have some misconceptions about QA and thus during SDLC, QA either doesn’t find any place or comes at last place in priority list. They have a tendency to think about specialized quality checks as least required thing and they think that it is a waste of time and money and keeping QA away from the project will reduce cost and in turn expect quality to directly come from production teams. Now question arises why they have misconceptions about QA?

 

Answer: They carry some myths about QA which derive them to think so. Following are some of them.

 

  • Myth: Testing can only start once product is developed –
  • Truth: It’s true that testing of the product is based on the source code but several issues can be prevented during requirement review at early phase. And making the test approach and strategy according to the requirement is independent from source code.
  • Myth: Any one can test the software application-
  • Truth: Testers use their mind very creatively to think differently than developer and including negative and alternative scenarios.
  • Myth: Complete testing is possible-
  • Truth: There might be several scenarios which can't be tested during SDLC and only occurs after deployment. 

 

Question: So what exactly QA Engineer’s overall roles and responsibilities are?

 

Answer: Generally QA and Testing are considered as identical but QA has more responsibilities than just writing test cases and do testing: 

 

  • He is good to give feedbacks and share his testing knowledge to understand the scenario.
  • He is excellent at creating scenarios based on requirements and need of end users.
  • To use the application like an end user, the QA's are usually good in understanding the requirements of business from the perspective of user.
  • On testing experiences QA can give feedback to product owner and help them so that they can use the application from end user's point, based on the requirements only and thus be helpful at early stages.

 

While he still writing tests and report bugs, with this he is also supporting various roles and responsibilities on the team. He is an important part of the team.

 

  • A QA can help developers to write unit test cases by acting like a proxy product owner and keeping track of problems and software bugs. 
  • When a business stakeholder finds a discrepancy, it’s easy and logical for someone from the testing team to validate it, write it up, and submit it to the software develop team for fixing. 

 

Question: So Why is it so important to include QA Engineer during initial business meetings?

 

Answer: Early inclusion of QA Engineer results in better product knowledge. If QA is incorporated right from the beginning stage of an assignment where he works almost with business analysts and developers, he can work as a BA as well. 

 

While development team stay focused on gathering requirement and more focused on technology side, QA focuses on risk involved in the functionality and shares feedback to Business Analyst. Feedbacks/Concerns are shared with the business stakeholders and then, based on the feedbacks from QA, business stakeholders may make educated decisions regarding changes in the initial idea. Why? The business cannot understand test cases & test results and only understands risks. After discussing each and every part of risk analysis, we finally ends up with a product idea which is less risky and more feasible & usable. Like this, QA team partner provides risk based information and becomes partner in decision making. This results in reducing overall cost of developing and delivery quality software.

Last modified on
Hits: 3635
0

Kickstarter is a wonderful place for new ideas to get a jump-start. Not only the platform provides opportunity for new ideas and projects to gain some monetary funding to get started, but it also is a wonderful place to gather support, valuable feedback, generate interest and awareness in your idea and get the first level customers for your project. But making it a success is not that easy. Over the last couple of years, I have worked with various campaigns and seen fair share of success and failures. In this article, I would like to touch upon a few potential reasons for failure of such campaigns.

1. If you start from Kickstarter – Many people think that Kickstarter is the place to start. This is not true. It is not a place to start. It is a place to take your idea further, to the next step. So, the best way to go about getting crowdfunding is to first work on your idea on your own as much as you can. Take it to the platform when you can move no further on your own. So, start at your desk, work on the project as much as you can, when you can not move any further on your own, then go to seek help from others. Remember the old saying, “God help those, who help themselves”.

2. Lack of well defined idea – Before any one gives you a penny, he has to understand your idea, then he has to identify with it, then like it, then see a potential in it's success, then only he will spare his penny for it.  As long as things are in one's mind, they are arbitrary in nature. Once these are put on paper, they start getting shape. Same goes for your idea as well. Give it a proper shape. Define it. If your campaign shows that the idea is not concrete, people will not understand it. If they do not understand it, there is no chance they will identify with it. Most of the ideas fail at this stage only. They are not well thought of.

3. Presentation of idea – Once you know what you want to build, the next step is to present it in your campaign. The better you present, more are the chances of people identifying with it. 

  • Video – is not mandatory. But you should think that it is mandatory. “A picture is worth a thousand words”. A video is probably worth a million. Do not take shortcut here. Nobody expect a professional video. A video recorded by a Smartphone is good enough. 
  • Show your idea – Use the video to show your idea and your work, rather than asking people to read about it.
  • Show yourself – Use the video to show yourself (and your team) to the world. People like to know who they are paying to. They also want to show the strength of your team.
  • Use your assets well – Use everything you have in the campaign; videos, audios, images, drawings, sketches and finally texts.

4. Utilization of goals – It is very important to tell people what you want to do with their money. Your goals (and stretch goals) should be specific and so the details of what you are going to do with that money. Be very specific.

5. Just the campaign is not enough – Campaign is not a solitary entity. It needs a lot of help from external sources as well. So, as your campaign runs on the Kickstarter, you need other campaigns to support it as well. You have various options:

  • Create a web page
  • Create social media accounts; Facebook, Twitter. Just creating them is not enough, keep them active. Better to start these one month before the campaign goes live. Through out the campaign period keep activity going on all fronts. Post updates, interact with people, answer their questions.

6. Aiming too high – Are you aiming too high? Higher funding goals are difficult to achieve. No harm in keeping the target low. If get funded once, and deliver on your promise, you have a better chance to get funded on second campaign. So, rather than aiming for a long shot, you can go phase-wise.

7. Preparation for funding – In real life, have unknown people ever given you money. Your answer will be, NO. This applies to Kickstarter as well. People who do not know you will not give you money even if you promise them to take to the moon. So, you have to find people who you know and let your campaign reach to them first. Chances are higher that they will support you. So, target to get money from friends, family and acquaintances first on your campaign. Once this happens, the campaign will gain traction on Kickstarter. This will bring it to the attention of whole community of backers. Then these unknown people will start backing you.

Hope this article helps you in avoiding the pitfalls in crowdfunding campaigns. I wish you all the success in your campaigns and if you need help, just leave a message.

Last modified on
Hits: 23722
0

Working in IT industry as a Project Manager, I do come across my team members praising or complaining about Project Managers as how they have made their easy or hell in the project. Well mostly out of these are the ones who rather complain and seldom do I hear praises for the Project Managers. So is it really that grave of a situation and we can assume that all Project Managers are disciple of Hitler?

 

Well not so, I think there are 3 categories of PM – Good, Bad and Ugly. They as the name confers may not be like that in reality and it is the perception of the team members against the Project Manager. I know you must be getting confused here, so let’s evaluate each of these characteristics:

 

1. Good Project Manager – This is one, whom we will associate from the eyes of team members as the one who plans well, approves leaves of teams, takes pain to deliver projects, helpful and sensitive. These characteristics may be helpful in terms of employee satisfaction but they may not be in the eyes of Employer as for them you are too friendly with team and this friendliness removes the fear factor amongst them. With this token- Is Good project manager indeed a bad one, not with the above example. A good project manager is indeed a person who is friendly with the team but not too friendly such that people fear him not and start believing in laissez-faire. A good PM does exemplary work, motivates team/spirit, mitigates risks and issues, meets client expectation and other things that keep project status in Green but what he also does is take corrective actions if things are going haywire, manage people and see their timings in office, have a way to escalate and report if any team member is under-performing or is not adhering to company policies. With doing this what team members have always at the back of their mind is that there is a PM who can heed to their problems/issues at hand but he is also there with a Vulcan eyes who can catch them if they are wrong footed.

 

2. Bad Project Manager – Now this is the biggest drainer in an organization and this is what one should be careful about. A Bad PM is the one who has limited functional/technical knowledge and even then manages a team of IT developers. This PM will never be able to comprehend the daily nuances of software development. Since he lacks this he will also not be able to identify beforehand the risks and plan to mitigate them. He also will be helpless in tackling with the issues when they crop in the project and will run from pillar to post for resolving them, in doing so he will consume lot of resources precious time and this will again affect the project timelines which is already struggling with delay due to existing issue. This PM is definitely not liked by the resources as he will have characteristics of micro-managing team, finding faults, scapegoating, building artificial pressure, non-cognitive thinking. These bad PM do what the saying says that one dirty fish can contaminate a pond. So would these PM be shunned right away, well not hastily, everyone should be provided an opportunity to improve. I have seen that most of the time Bad managers also have some reasons to become bad such as they are not in the righteous place/position/team, they lack training, they are master less i.e., lack checks and balances, are hideous where they tend to hide their incapability by means of being harsh and rude. So I will say that these people if they tend to improve can go on the path to become a Good PM if not then dismissal is an option.

 

3. Ugly Project Manager – Now this is a PM who has a tendency of becoming a bête noire of his subordinates. This PM becomes ugly following his actions that make a dreadful predator who is always on the lookout. This PM believes in reprimanding and does follow a regimen of fear tactics. This he does in order to make the team deliver to their full potential without mistake and many a times they even succeed. They may not be helpful always and before some team member approaches them for help they make sure that they have tried it twice or thrice as if not they can face the fury. These PM give orders which can be like a decree for the team members and they tend to follow it religiously. So this PM may be ugly for the team but for the organization he proves to be helpful as his team is the least problem creator. So then if that’s the case can we say that Ugly PM is indeed the best PM, well not so, see when you are Ugly/fearsome PM then team don’t tend to question your judgments or decisions which sometime becomes detrimental to the project as a unanimous decision is the best decision. With the constant fear in which the team works there are high chances that there will be quite of higher rate of exits from the team as all members may not be accustomed to this kind of management. Moreover since this PM is dreaded, they tend to make very less friends in the organization hence when they need any kind of help there will always be few givers.

 

So to encapsulate I would say that a PM should have a mix of Good and Ugly PM traits in them. This good-ugly mix can prove to be beneficial for everyone- the team, the project and the organization. The key is the PM should know about his trait periodically and this could be done by peer review and 360 degree evaluation.

Last modified on
Hits: 8217
0

Working as a Project Manager and having more than a decade of experience working in the IT industry, I feel that following are the key points that helps in quick delivery of software development product:

 

1. PM identifies the risks at the right moment, risks are defined as something that has not happened yet but is bound to happen if corrective actions are not taken. Identifying risk timely provides PM to make plans for corrective action so that they can either avoid the risk completely or mitigate its effect to some extent. For e.g., if a project has a team of 3 developers and a developer resigns during the middle of the project. This tends to be the biggest risk that can affect the project owing to the size of the team. Now PM’s job should be to proactively work with the HR to find the replacement in time so that the KT of the project can be done in time and there is minimal impact on the project.

 

2. PM is dexterous in issue resolution. Issues are defined as incidents that have occurred and now need to be fixed. Issue could be vivid like related with coding, people, skills etc., and when they crop up an experienced PM has to become active instead of reactive. They need to plan out the QAt management and help the team to resolve the issue first rather than doing fault finding and cornering people. I am not saying that fault finding should be completely omitted, but it’s just that it can come later once the issue is resolved. For e.g. A developer forgets to check in his code in subversion over a period of time and one fine day someone else discovers this shortcoming. Now this is a major issue as this involves the code base on which developer has been working for long and this is not updated/stored safely in SVN. Once this goes to repository that can impact other developers’ work. Now instead of blasting the developer, PM should first make sure that all the code files are checked in successfully in SVN and the dependencies are resolved to make sure application is working. PM should also make sure that the SVN check-in is happening in correct way and to tackle any issue encountered. Reprimanding the developer action will come later when this issue is resolved, then with the developer root cause should be found in which it could be that developer understanding in SVN check in is less and he/she needs guidance. It could also be the case that the developer completely missed it, in this case a process should be brought in place where PM or TL periodically check if check-ins are happening.

 

3. PM does exemplary work and empowers the team. By empowering team he make sure that every team member is committed and motivated for their work, this way they make sure that redundancy in the team is maintained say if in a situation where a team person resigns. For e.g., there are certain tough tasks in a project that only TL is currently doing, PM should make effort to allow junior resources also to learn with TL the difficult tasks as this will enable them to learn things and eventually help them to grow in the company. This also empowers the overall team and makes task delegation easier.

 

4. People Manager – Managing the team well wherein he paves a listening ear to the team and their personal or work related issues if any. Maybe not every time PM can help but it gives a mental satisfaction to the team members that there is someone to listen to their grievances and they can focus on their work.

 

5. PM manages the change requests and enhancements such that they get to run with him. These activities are then planned and scheduled such that they do not affect a planned release. For e.g. in a project running on fixed cost and fixed time, and client is asking for a new or improved functionality. Say this effort is for additional 5 days so this need to be accounted for, client need to be made aware of this, have his approval on this change request and then modify the plan and pricing of the project accordingly.

 

6. Task Management and Assignment – PM manages the project in such a way that the most difficult of tasks in a project are given to more senior resource. If this is given to a lesser experience resource then this will delay not only the timeline of this task but will eventually drag the project. Also if a task requires more research than 1 person then in such cases more resources can be added to work on same task which is further divided in sub-tasks. This is done to keep up with the on time delivery of the project. For e.g. In one of my project in which a team of 3 resources were working, I came across a new feature of integrating a third party device. This task was assigned to the team lead as this was a new thing that we were doing and needed good experienced person to be engaged.

 

7. Short term staffing for specialized jobs – In a project there are sometimes situation where the team hits the wall, this is when there is something related with technology that needs to be done and team has zero experience on this. So in situation like these there need to be specialized people that need to be engaged, a good PM senses this during the course of the project and raises the request timely for a short term staffing of the resource on need basis in the project. It is also important that the knowledge acquired by this short term staffing is then transferred and retained to the original team as well, so that it can be handled in future. In one of the project, there was a requirement to create various environments like Dev, QA and Production in AWS, now since the dev team was not dexterous in installing these instances, I have to engage a senior Architect/DBA for this task on need basis who actually did created these instances with ease for the project.

 

8. Firefighting – There are situations when while developing an issue crops up, this can be known or unknown issue, in such instances the PM has to bring the team in firefighting mode wherein the team works much harder and longer to douse the issue at hand. This task is overseen by the PM himself by working in line with the team so that they are uplifted and motivated in working extra hours in such grim situations. So, PM has to be flexible in getting more out of the time at times while offering them compensatory offs at other times.

 

So, the PM’s role is very critical in getting a project delivered on time. He has to be on his toes and at best of his judgement to not only understand current situation but also to gauge what may happen in near future and be prepared to take decisions based on that to effectively manage the project delivery.

Last modified on
Hits: 5440
0
As part of our software development services, we are involved in maintenance and enhancement for software products for our clients. At times, these clients want to explore the option of rewriting the application on some latest technology. Quite often the technical team is also keen on rewriting the application on the latest technology, rather than digging into the existing code base for providing bug fixes or adding new features. While it may be appear to be an attractive option for the development team to sell the idea of development from scratch on the latest technology, there are a few misconceptions and high risks normally associated with the 'rewrite to fix everything' approach:

- Rewriting the code will take less time than fixing the issues: Software development projects nearly always take more time than initially planned. The bigger the project, higher are the chances for it to have cost and time overruns. You may well end up adding many new bugs into the system and having to incur cost of many test and bug fixing cycles before having a product which can be released.

- Existing code base is messy: As the software tends to evolve over time, the existing code base is likely to be messy, and is likely to appear messier to a developer who has not been involved in the initial development. Even with a rewrite, it is very likely that the new code will end up being as messy as your current code by the time development is completed.

- New Architecture and Framework will address all the current issues: It is not easy to define an architectural framework, which can handle all changes and enhancements, which may come in the future and still withstand the test of time in terms of maintainability, scalability and performance. What are the chances, that the same or new mistakes will not be made in the new approach and you do not end up facing the same or some more serious problems?

- Cutting Edge Technology: You may start the rewrite on a technology  which is seen on the day as cutting edge, but by the time you complete the development it may not longer be seen as the in thing. Also your current code base is very likely on a well established technology with a wide support base, which is not likely to be the case with the so called cool and latest technology.

Some other high risks associated with the rewrite approach are:

- High Risk of failure - There is a high risk after starting the rewrite you run into serious issues which lead to abandoning the project. This is more harmful in the scenario when your existing product with a customer base has been neglected over this time period as you have moved resources for the new development.

- Missing existing features and workflows - While rewriting the code there is a high risk that you will miss some features and workflows of the existing product. You can be sure it is this feature your customer base will miss the most after release.

The most important reason for your product to exist and have a wide customer base is because it solves a customer problem and makes their life easier. This should always be kept in mind while defining the development roadmap for your product. Any decisions of change in technology or platform should be made with this goal in mind. 

The best approach for any technology migration for your product should be planned in a gradual and iterative manner. Some key points which should be part of your strategy are:

- Re-factor the existing code base. Take up parts of the existing code base to re-factor, add useful comments, test and release.
  The key word here is Re-factor.  This is the least risky option.
- Identify modules or components which can to rewritten and migrated to a new technology with the least effort and risk. This will give you insight on the technology and also validate your approach.
- Develop the core parts of your product on the new technology as a parallel development without affecting the support and evolution for the existing product.
- Your customers may want some new features on your existing product. It is a good idea to release this on the existing product and get valuable customer feedback rather than promising the customer and keep them waiting for the release of the new version.
- Be aware of the end-of-life announcements regarding the technology you are currently using. Plan the migration to a new technology based on this timeline so that you are not rushed into it.

If you take up the porting of your product to a new technology with the above approach and take steps to mitigate the risks, while ensuring that the support to the existing customer and their needs are not compromised, you are more likely to succeed.

Last modified on
Hits: 3734
0

Posted by on in Uncategorized

Recruitment Process Outsourcing ExplainedNumber of companies globally are increasing to outsource their work. The leading countries to which work is being outsourced is India, followed by China, Malaysia and Thailand. These are currently the top nations for outsourcing work, whereas, nations like Brazil, Indonesia, Bulgaria and Philippines are also coming up strong in this sector.

 

A few different sectors in outsourcing are BPO's, KPO's, Data entry, IT sector, Health sector outsourcing and Financial sector outsourcing. 

 

What we really want to talk about here is, Outsourcing with Consulting and Implementation. This refers to outsourcing of work by a company, by consulting it with an outside party. This brings in the importance of an Recruitment Process Outsourcing (RPO). When a third party takes the responsibility to recruit or hire resources for a business it is known as RPO. 

 

A third party can be vested with all the hiring responsibilities for a business or only some of it. While outsourcing, the third party becomes directly responsible for the outcome of the recruitments done by them. The advantages for a business or a company while outsourcing with consulting is that, they are relieved from the headaches in identifying the right resources and can also be assured that they are hiring professionals for recruiting the right people for them. 

 

These consultants or hiring experts, act as a human resource department for a company and once, a business module along with the set of responsibilities at each level is discussed with them, they can get the recruitment underway accordingly. 

 

Companies can choose to outsource both their entire work or partially by consulting these third parties. Outsourcing is primarily done by companies in order to check on the operational cost of their business. 

 

This is also the core requirement of small and medium enterprises, which exist in countries with really high corporate taxes and extremely high labor costs as compared to developing nations like India, where, besides the cost of labor being far cheaper than their own nation, it also has economic stability.

 

But outsourcing cannot always be a great and reliable option because by doing so a company shifts it responsibilities to an outsourcer. 

 

By doing so, they can never be able to keep a close check on the day to day functioning of their own business and have to count on the outsourcer for the same. From employing resources to identifying and directly assigning responsibilities, all lies in the hand of the outsourcer. Hence, it is consistently poses some risks in regards to the achievement of the desired result of that business. 

 

So it is always a great idea, to have a third party adviser involved, which a company can entrust with doing the outsourcing on their behalf and thus, eliminating the level of risk substantially and creating a sense of security.

Last modified on
Hits: 9017
0

Metro cities like Delhi, Mumbai, Chennai and Bangalore are famous for doing any kind of business and why not, after all it is a dream of every entrepreneur to establish his or her business in these cities. But, have you ever thought about the pros and cons of doing business in these cities? Today, I would like to tell you why Offshoring to Tier 2 Cities is more beneficial than to big cities.

 

Our company, Evon Technologies, is situated in a small city named Dehradun- a city which is known for its pleasant climate and beautiful surroundings. A few years back nobody had thought offshoring business can grow here with such a pace, but today, our city is famous for the very same reason. After all, we have so many benefits here than in metro cities. Yes, you heard me right, the benefits that we don't get in metro cities. 

 

Startled by my statement? Let me tell you friends, what is the difference between offshoring to big cities and to Tier 2 Cities. 

 

Evaluating benefits of Offshoring to Tier 2 Cities & Limitations of Offshoring to Big Cities:

 

1. Offshoring to Tier 2 city saves money:

       To start any company, one would require a good amount of Capital. Investing money in the Tier 2 Cities is the best idea because there are various companies who started their business by investing a smaller amount of capital and the profit they earned in these few years has helped them grow many-folds.

 

It may sound an unconventional idea though, yet it always works. Invest Less and Get More Returns, will help you recover from the losses that may have occurred in past. Our company is one of the biggest examples for this. 

 

Initially Evon Technologies had started its business with a small setup, but gradually, with the growth of the company, it now owns premises in the IT park, which is known as the biggest IT hub of Dehradun. The company has not only grown financially strong but also maintained its reputation and trust among the clients. 

 

2. Low infrastructure cost:

       Infrastructure is one common thing which is required by any firm. To setup any business, you need a sound backup of infrastructure. Hence, to start any business, one should need to setup a good infrastructure unit. In Tier 2 Cities, the cost of infrastructure is low. Initially, one can easily setup ones business in one or two rooms and later, when the business has kicked off, the entrepreneurs can think big. 

 

3. Attrition chances are less:

       Nowadays, attrition is a big menace. Let me give you an example that my sales person shared with me. 

 

He was coordinating with a US based client who is in offshoring for more than 20 years of experience in onsite-offshore development model.

 

The client was working with an offshore team in Delhi from last 5 years. To meet the offshore team he has to travel every six months. In his every visit he noticed that 60% of the people are new faces. Also, in the time period of 5 years there was not even a single person available in three consecutive visits. Hence, even being the biggest client of the company, they were not able to retain the team members. The client was facing really big problem because of this and started looking for some good options in Tier 2 Cities and that's how we met them.

 

In Tier 2 Cities like Dehradun the attrition rate is very low, we hire people belonging to Dehradun and looking for long-term association. This kind of approach helps to hold the team for the long term. I have biggest examples sitting in our company, its been 9 years that we have started and we have people here, who are still associated with us since the beginning and they are happy and satisfied here. 

 

4. Tax Free:

       Various Tier 2 Cities are considered as a tax free zone or, if not then some of the area is called as a Tax free zone. 

 

SIDCUL, a Government department provides tax incentives to various companies that establish their plants on its industrial estate. As per SIDCUL policies, 100% tax exemption is given for first five years and approximately 30% for another 5 years. In Tier 2 Cities government provides these kind of facilities to both small and big companies. Besides, interest rates are also lower for the companies who establish business here. 

 

On the other hand, in big cities such kind of facilities are not provided to any company. A company has to pay tax and higher rate of interest to the government. No matter whether the business is running smoothly or not, the company has to pay complete tax and interest. 

 

5. Low cost of living:

       Cost of living in Tier 2 Cities is very low. Despite being small, these cities have everything like malls, hotels; we also have good supply of electricity, better connectivity of roads and well planned industrial areas. These are the key points that an entrepreneur looks before investing. One of the most favorable things here is that employees are local residents and thus, they don't have to pay any extra expenses like renting a house. Apart from this, people who are from other cities pay lesser rents as compared to metro cities. 

 

6. Less Commute and Higher Productivity:

       High productivity and less commuting time are interrelated to each other. In big city companies productivity is considered as a major issue. It is not because people are not working properly in these cities, but because people are surrounded with various problems that even spending 13-15 hours outside their homes they are hardly able to make out 6 hours of the productive work.

 

Commercial areas are situated in the center of the cities, whereas, homes are in the peripheral areas. Hence, it takes approximately 2-3 hours of traveling due to the heavy traffic. Apart from this, one has to look for various things like social activities, household duties and most importantly people are living without any family support and thus, they have to manage everything on their own. It is true India has become an excellent offshoring option due to cost benefit, but since last 20 years the cost of living has gone very high in big cities due to which these cities are losing cost benefit factor, combined with less focus at work. These were some instances due to which the productivity to cost ratio is going down in big cities.

 

But in small cities the work place is not more than 15 to 20 minutes away from homes. Most of the people are living with their family and thus have great support system. They are less stressed out and stay in peace. They can spend their 9-10 productive hours in office very easily without any stress, both physically and mentally. Besides, they can spend quality time with their family. 

 

The above analysis indicates that people working in Tier 2 Cities will give more productive hours than in metro cities. 

 

Above mentioned points no doubt explain the entire concept, Why Offshoring to Tier 2 Cities in India is Fruitful; but there is a saying that fits perfect here “Each Coin has Two Sides”. Likewise, with so many benefits, small cities have one small disadvantage as well, i.e., it is hard to get Plug and Play offices in Tier 2 Cities. 

 

In big cities its easy to get the offices with perfect interiors and infrastructure that suits the environment, whereas, in Tier 2 Cities it is hard to get such kind of offices. One has to establish the entire setup if one wants to run any enterprise. This is the only disadvantage we see in the Tier 2 Cities. 

 

As per my opinion, people who think doing business in Tier 2 Cities is the worst idea ever, I believe above mentioned points are enough to prove them wrong. Through this blog, I am not criticizing Offshoring to big cities, but I just want to convey a message, Offshoring to small cities can also prove a boon if you are a dedicated company like us. 

Last modified on
Hits: 11316
0

Posted by on in Uncategorized

This is a true conversation I had with a client, followed by my email to him a few months after this conversation.

 

Client: I would like to have a high quality, bug free application for my customers.

 

Me: Our developers are excellent, but we would need a good testing strategy to make sure that the application that goes live lives up to your and industry’s quality standards. 

 

Client: We are a startup and would like to keep the costs under control and would like to keep the testing budget down. 

 

Client: You need to take care of the quality at the development level.

 

Client: We will also do the testing of the application on our own.

 

Me: Okay, that would be great.

 

I wish, I hadn’t agreed…

 

Dear Client,

It has been a pleasure working with you from the very start when you came to us with your idea. Brainstorming with you about converting your idea to a feasible concept to develop and bring it to market has been wonderful. We have been awed by the groundwork that you have done about your idea and the concept documents that you came up with. Over the last couple of months, we have crossed a few phases together where we have produced the visual designs of the application, finalized a solution approach, setup the framework of the application and have developed a few modules of your requirements. The journey so far has been nothing short of a roller coaster ride. 

 

But now we are on the brink of a situation that can lead to a big RISK. My fault was that I submitted to your suggestion about cutting on testing budget during our initial discussion. That decision has led to the following concerns. 

 

  • We do not have a defined testing strategy. We do not have a test plan or test cases. 
  • In the absence of test cases, our developers do not have a documented way of covering all cases for a feature. Do you know that QA is the best person to document your requirement at a granular level? They do so by defining all the positive, negative, corner cases arising from the requirements, thus providing the developers a wholesome view of what all criteria each functional module should pass. So, essentially QAs act as a Business Analyst and are the guardians of your requirements.
  • Our developers are not only developing the application, but spending considerable time in testing the application as well.
  • Not only is the developer, our project manager is also spending good amount of time in testing the product before it is released to you. 
  • And finally, you, our customer are also spending valuable time on testing. In a nutshell all the people are spending time on doing the work that neither they are supposed to be doing, nor they are experts in doing that. 
  • As a result, frustration is creeping in the team at all levels and despite going out of the box in doing that, results are not great. 
  • And the lowest of low, we end up spending a lot more that what we should have in doing this job. The reasons for this are simple.
    • The product has to be tested. Period.
    • If QA will not test it, other people like developers, PM and you have to test it.
    • They will not do a better job than trained and experienced QA, as they are not experts. 
    • They will not be able to provide that kind of coverage as professional QAs can provide. 
    • And, believe it or not, developers, PM and your time is costlier than that of QA, at least in our company and in general in the industry as well. 
    • So, we are doing what has to be done anyway, non-experts are doing it, spending more than what we should and we are not getting the best results. 
    • So, it’s a Lose-Lose situation for all of us and all of us are getting frustrated.


Before all of us go nuts working the way we are and go over budget, I request you to please look into the matter. We need a testing strategy and your project needs a test plan. I am here to help you devise one. I just request you to please see through the situation and realize that we are not saving money but losing it by ignoring QA. QA is essential part of a development project and Test plan is as important as a Development plan.

 

Your’s truly, 

Service Provider

Last modified on
Hits: 3935
0

 

Most Technology Start-ups take the following conventional approach in their endeavour to start a successful business :

 

- prepare an elaborate business plan

- pitch it to investors

- build a team

- develop and introduce a product

- sell the product

 

Research shows that 3 out of 4 start-ups end up failing in their endeavour somewhere along this path. In most cases, further the stage of the failure from the point of inception, higher is the cost of failure. 

 

The alternative Lean approach for Product Development by Start-ups is essentially based on the following philosophy :

 

- build a 'minimum viable product' based on continuous 'customer development'

 

In the Lean Start-up model the founders do not begin with a business plan, instead they begin with the search for a business model. In this approach, multiple quick iterations of experimentation and feedback are conducted which result in a business model that is executable.

 

This will typically follow the following sequence :

- Translate idea into business model hypothesis.

- interact with one or more customers to test the hypothesis and validate the assumptions about the customer needs.

- create a 'minimum viable product' to fulfill a customer need

- let your customers try out the product and get feedback

- based on the customer feedback develop the next iteration of the 'minimum viable product'

 

 

Business Model Hypothesis :

Founders are expected to briefly describe the hypothesis in a framework called Business Model Canvas. This involves listing out how the company will create value for itself and for its customers in the Business Model Canvas (shown below) provided by Business Model Generation. This is a template in which you need to answer a set of questions under 9 key areas resulting in the business model hypothesis.

 

canvas1.gif

Business Model Canvas

(SOURCE:WWW.BUSINESSMODELGENERATION.COM/CANVAS)

 

 

Customer Development :

Lean Start-up approach requires the founders to test their hypothesis with the potential customers. The founders reach out to the potential users, purchasers, and partners for feedback on all aspects of the business model including product features, pricing, affordable customer acquisition strategies and distribution channels. The feedback can result in the business model hypothesis being improved upon or an coming up with a new business model hypothesis by dumping the existing idea.

 

Agile Product development :

Lean start-ups practice something called Agile Development for product development. Agile development works hand-in-hand with customer development.

 

This approach does not involve the typical long product development cycles which run for several months and is based on assumptions of knowledge of customers’ problems and product needs. Agile product development aims to develop the 'minimum viable product' which include the minimum features for solving the specific customer problem. This minimum viable product is then tested with the potential users and customers to confirm that the objectives are achieved. This approach eliminates wasted time and resources by developing the product iteratively and incrementally and testing the 'minimum viable product' at the end of each iteration.

 

b2ap3_thumbnail_Agile-Development-Diagram.jpg

Agile Development

 

 

In conclusion, the Lean Start-up approach has the emphasis on nimbleness and speed and aims at reducing the cost of failure by the inbuilt mechanism of feedback and course correction at each stage.

 

New ventures can follow this approach to rapidly assemble minimum viable products and elicit customer feedback. This customers input is continuously used to revise their assumptions and then go through another development cycle, testing redesigned offerings and making further small adjustments (iterations) or more substantive ones (pivots) in case of ideas that are not working.

 

We at Evon Technologies have gained extensive experience in the above approach over the past eight years by working with many Start-ups. We can be a partner and service provider for Start-ups in their execution of the Lean Start-Up Model, by providing services in the following areas :

 

- Market Research

- Optimizing your Business Model

- Developing Market Requirements into Product Road-map

- Software Product Development and Quality Assurance

- Internet Marketing.

 

Learn More about Lean Startup Methodology : http://theleanstartup.com/#principles

 

Last modified on
Hits: 16736
0

Internet has made the world a smaller place. It has not just helped in communicating and accessing online data but has also become a potent tool for learning. E-learning is seen as the most cost effective mode of spreading knowledge in today’s world. E-learning development is seeing huge demand in a lot of spheres in our lives from educational institutes to corporate training. E-learning developers are providing custom online learning solutions to businesses and other institutions to take care of the e-learning needs.

 

E-learning developers are effectively using the Internet, Intranet and data storage mediums like the CD-ROMS and DVD-ROMs to democratize learning. This has narrowed the gap in learning between a big metropolis and sleepy town, a renowned educational institute and village school. Users have easy access to work and study modules on the Internet on a click of the button. Since, these modules aren’t time dependent; users can access it at their own convenient time.

 

Major Technologies Used in E-Learning

 

·        Adobe Captivate - Adobe Captivate that was formerly known as RoboDemo is the industry leading software for developing e-learning modules. It is generally used to make software demonstrations, software simulations, randomized quizzes and branched scenarios.

·         Adobe Flash – Formerly owned by Macromedia, Flash has been one of the mainstays of the e-learning development industry. It has been one of the preferred choices for developing interactive games, applications, environments and simulations. A time tested application it has been the preferred choice of developers owing to the flexibility it provides.

·         MS PowerPoint – It is the traditional platform for development of e-learning modules. This is the most user-friendly of the e-learning tools available in the market and can be used even by amateur authors. Fundamentally simple slides are created which can be iced with graphics, audio-visual elements and animation.

·         MindMeister – It is an online mind mapping software that allows users to visualize their thinking using mind mapping methods. It is being used widely for discussions, brainstorming activities, analysis and problem solving. It is considered to be the most modern of e-learning tools. It offers real-time results on mind mapping.

·         Dimdim – It is an open source platform that is being widely used for free web conferencing service. Here users can share desktops, show slides, collaborate, chat, talk and broadcast via webcam. Real time rich media training sessions can be conducted using this tool.

 

If you are looking to get e-learning modules developed for your business it is advisable to outsource it to an offshore development center like at http://evontech.com/e-learning.html. You need to make sure that module developed is self-explanatory and requires minimum software interface to run on the client side. The expertise of your e-learning developers will come into play here so going for an experienced firm is the best choice. Your target audience is another thing that you need to keep in mind while opting for an e-learning module.

Last modified on
Hits: 3405

What is the best way to keep in touch with your friends and family in today’s hectic lifestyle? The answer is, through social networking websites. In many ways it has been a boon to thousands; in fact millions of people who would otherwise have been living secluded yet busy life. There are many kinds of social networking sites that are very popular but there is an emerging trend that is diversifying this field.

 

Today many are building their own social websites for the benefit of those they know. Also there are many businesses that are building their own versions of such sites as a way to update customers about new products and software releases. Additionally this also boosts up the communication process and you get to be in constant touch with your customers. Development of such sites is thus very important and you need to know the tricks that will make your site better than the rest.

 

Custom development of these sites is the key to success. Website developers are constantly on the loop to design better and fresher designs. If you are seriously thinking of expanding your business by developing a social networking site, then consider hiring a website developer who has expertise in this kind of websites.

 

The most cost effective way to develop such a site is to outsource the work. There are many offshore development centers that will meet your priorities and develop the right kind of product for you.

 

Tricks to a good social networking website

 

  • Social networking websites keep coming and going, thus it is very important that you design something that attracts the users. Cluttering the site with things that aren’t useful is definitely a bad idea.
  • When you are planning the features and functionalities for your networking site, answer this question. Why will any user come to my site? Yes, you have to bring in the users. They have to stay in your site — the longer, the better. Include games, useful software in the site to keep your users engaged.
  • Are you designing the site just for your customers or do you plan to expand it to all kinds of users? Depending on it, go about designing the site. Tell your website developers who the site caters to.
  • One common mistake amateurs make with social network development is overloading the site with unnecessary things. This slows the loading of the page and makes the user impatient. Be sure that your user gets into the interface quickly so that they stay longer there.
  • The latest trend doing the rounds is interoperability. This has come into prominence with technologies such as OpenID and OpenSocial making a fray into the market. Do you want your social site to be interoperable? Well, if yes, then you definitely have to visit the best in business at http://evontech.com/open-social-integration.html.      
Last modified on
Hits: 8146
0

Posted by on in Uncategorized

One of the keystones of a successful business is to keep your customers happy. This is where Social Customer Relationship Management or SCRM, as it is better known, comes into play. In other words, SCRM is nothing but Customer Relationship Management using the social media. Businesses around the world are looking at SCRM development with a lot of enthusiasm. In such a scenario SCRM developers are providing solutions, which help in engaging and increasing the interaction with customers. SCRM is a strategy that is often supported by various tools and technologies that manages a back-end process for managing customer relationships and data in an efficient and process-centric way.

 

SCRM offers real-time solution to the customers by encompassing all the elements of business – marketing, sales and support. The social media is used effectively to create awareness about a business using the customers as the anchor and solving their problems.  In today’s business environment where there is a lot of competition and customers are choosy, SCRM becomes a vital component in not just keeping a customer happy but gaining his or her loyalty. Millions of dollars are being spent by businesses in developing SCRM models that cater to all the minute needs of customers.                 

 

Most business firms prefer to outsource SCRM development to offshore development centers in countries like India. Here expert developers handle custom development projects that take into account the interests of a customer. Here you can hire highly skilled developers at a fraction of the cost as compared to in developing countries, thanks to the low cost of hiring skilled labor. These offshore development firms also offer you great support services post-delivery to help you cater to the emerging trends and needs of the customers.

Advantages of SCRM

 

·         SCRM has shattered the boundaries set by traditional models of serving the customers. Its reach is unlimited and it has given the power to small and medium businesses to match their giant counterparts in serving customers.

·         It develops social and collaborative business, both internally and externally. It helps different arms of a business to come together for a common cause of serving the customers. On the external part it helps customers to get their problems solved immediately.

·         Businesses can not only serve their customers but can also attract new ones to their business. It helps in understanding the latest trends in the market and catering to these needs. SCRM is being extensively used in setting goals and analyzing the conversion.

·         It empowers customers to shape their own experiences and share it with others both to ease usage and improve the quality of the product or service from the feedback received. It also allows them to be a bigger part of the business process rather that the last straw i.e. sale. To know more, visit http://evontech.com/open-social-integration.html

Last modified on
Hits: 3146
0

Posted by on in Uncategorized

It has become very common now to use Flash as an attraction to any website. Almost all the websites have some components of Flash in it in the form of audio, video or an intro slideshow. For your business to flourish on the World Wide Web, you need to attract your customers and sustain them too. It is seen that Flash is a very good option in this regard. Website developers have for years now been on the fray to make websites more appealing including the element of Flash.

 

On the other hand, a website is based on the very features of HTML. As a building would collapse without a good foundation, a website without strong HTML tags cannot be built. However, nowadays with content management systems (CMS) like WordPress making a huge impact on the web development process, not many users are interested in learning the tedious process of applying HTML tags manually. Moreover, the older versions of HTML do not allow including video or audio elements in them. Due to this, more and more professionals are learning how to use Flash on their website.

 

On a positive note, things are changing now. Flash has got a stiff competitor in the form of HTML 5. Website development is fast happening with this new version of HTML released in 2008. HTML 5 is a groundbreaking upgrade released by World Wide Web Consortium’s (W3C). Rich internet application plug-ins, like Flash, may soon face challenge due to this technology. HTML 5 uses a new tag called Canvas, for 2D drawing and is being promoted by heavyweights like Apple, Google, and Mozilla. Internet Explorers still hasn’t backed Canvas.

 

As of now, according to the latest trends tracked on the Internet, Flash is used more commonly, embedded into web pages via HTML’s Object tag. Offshore development centers that hold the larger chuck of web development projects are still relying on Flash for animation as there are many unaddressed issues with HTML 5. Some of them are:

 

  • Browser compatibility: Most of the users still prefer using Internet Explorer for browsing the Internet. As already mentioned, Microsoft hasn’t allowed Canvas into its browser. Flash on the other hand in an add-on plug-in and can be conveniently used.
  • Users prefer CMS like WordPress for developing their website. HTML 5 requires additional knowledge.
  • Those who are outsourcing their website development to companies abroad still prefer custom development of their website. Since HTML 5 hasn’t become very popular yet, not many are keen to experiment with it as of now.

 

It can be thus said that though HTML 5 has huge potential, Flash rules the market at present. Not many have yet experimented with the latest version of the markup language. However, if the heavyweights in the industry start using HTML 5, Flash will have to upgrade itself and compete with its own match. To know more about Flash and HTML 5, visit http://evontech.com/html-5-developers.html

Last modified on
Hits: 3470
0

Posted by on in Uncategorized

With easy access to Internet, it has become very easy for most of us to learn things that we didn’t know earlier. It may be a small thing like a new term not found in the dictionary or it can be a specific subject you are interested in. With the concept of e-learning becoming popular, the boundaries of knowledge transfer have increased manifolds. E-learning development is essentially about developing interactive learning methods using texts, audio, video and graphics in a more synchronized and interesting matter.

 

But what is e-learning?  Any kind of knowledge that is gained online or anything that is learnt online with the help of technology or computers is the crux of e-learning. It is a very democratic, participative method of learning where a student or learner is taken out of the four walls of a classroom and thrown into a bigger and more dynamic environment accessed through the Internet.

 

One of the basic features of e-learning that makes it so unique is the feature of custom development. Many online learning platforms are explored by e-learning developers that make unique and specific study content for a learner. For example, if a middle aged executive wishes to learn about photography, which had hitherto been just his hobby, he can enroll in a photography tutorial online that is specifically designed to suit his needs. On the other hand, there may be a professional photographer who wishes to diversify and learn about other aspects of the subject. The e-learning developers will thus have something different for him.

 

Advantages of e-learning

 

  • Distance is no longer a barrier. You can learn anything and everything under the sun if you have access to the Internet and if you are keen to learn something new.
  • E-learning focuses on flexible content creation. There is no technological boundary and has very good management solutions.
  • The basic structure on which e-learning is based is the virtual classroom. It is a special learning environment that inculcates synchronous content and experiences.
  • It also gives an opportunity to earn online distance education degree. A tutorial, study materials are provided online and an interactive session is also available where the learner and the tutor can post reviews, comment, and ask questions.
  • It is the next-generation method of education. There are many who miss out on their education as they set early to seek job. But with the possibility of e-learning, now these people have the opportunity to learn as and when they wish.   

There are many offshore development centers that are continuously building online education modules catering to corporate and educational institutes equally. There are also many companies that have their own learning management systems to help their employees refresh their talents. Most of the times, companies outsource these kinds of work with the prospect of saving money and freeing themselves of the cumbersome process of developing a learning module. Outsourcing companies are thus providing cheap, customized learning modules that benefit the corporate sector immensely. To learn more, visit http://evontech.com/e-learning.html and get a free quote now!

Last modified on
Hits: 7241
0
Product Engineering, software engineering company, Product Development, Product Migration, Product Re-engineering, Product Maintenance, Product Testing Commercial Application Development, Business Software development, commercial software for startups, Application Support and Maintenance, software testing Product Maintenance, Outsource product maintenance, product support and maintenance Product Migration, Product Re-engineering, product re-engineering services Product Research, Product Engineering, UI Prototyping Services Software Testing Services, Quality Assurance services, professional software testers, Load Testing, Functional Testing, Cross Platform, Browser Testing, Test Automation, Testing Tools, software quality analysis Functional Testing Services, software quality analysis, Software Testing Services, Application Testing Services, Functional Testing Types Automated Testing, Automated Testing Services, automation testing, test script development, Automation Test Tools, outsource automation testing Load Testing, Performance Testing Services, Load Testing Tools Offshore Software Development, Outsource software services, offshore outsourcing services, offshore software development services, IT outsourcing services, software quality assurance services, Offshore IT services, Custom Application Development Services, Offshore Product Engineering Benefits of IT Outsourcing, Offshore Software Development companies, offshore software development firms Outsource planning, IT outsourcing, IT development services, offshore IT companies, offshore software development Offshore Software Development, Outsource software services, offshore outsourcing services, offshore software development services, IT outsourcing services, software quality assurance services, Offshore IT services, Custom Application Development Services, Offshore Product Engineering Offshore Software Development, Outsource software services, offshore outsourcing services, offshore software development services, IT outsourcing services, software quality assurance services, Offshore IT services, Custom Application Development Services, Offshore Product Engineering