Saturday 6 September 2014

CLOUD...Does It Rain?

Cloud...the first thought that gets into the mind is the cloud computing rather than a cloud in the sky. The rapid technology growth in this area made this word to lose its original meaning. But still there is a lot of gap between a common software professional and the cloud because most of the young professionals do not aware how it can change their life and what it can bring to their career. Lets see what cloud computing technology talks about!

Cloud

In a common-man's language, cloud is a "software technology on rent". Professionally, cloud is a service that provides the technology (software/ hardware) in a sharing model. That means, outsourcing the IT operations of an organization to a cloud vendor. However IT operations can be outsourced at different levels .. as a whole or only part of it. Cloud vendor takes care of the such operations and charge the fee accordingly.

How it works

It works in a normal business model where a cloud provider provides the services, called the cloud-vendor and the user who subscribe for the service, the cloud-user. For example, a start up company that develops a new software product needs to have the basic infrastructure setup like a set of computer hardware, network setup, office space to keep the lab (data center),  required software platforms and licenses to develop their product and the maintenance staff (network engineers/ hardware engineers/ database engineers etc) in order to start developing their product. This is a costly and time consuming affair. Instead, if the start up company subscribes to a cloud service from a cloud provider company, all this initial setup can be skipped. Here the provider company provides all the mentioned setup as a service and the user (start up company) can start using them from the day one itself. 

Service Models

Cloud services are provided in different models. They are classified on the level in which the services are used i.e. at hardware level/ software level/ application level or whole of these.

IaaS (Infrastructure as a Service)

This model provides the users with virtual machines, servers, storage, network etc. For example, a new company needs a powerful server to run their application and some more systems to develop, build or test the application. Instead of buying these systems and set them up, send this requirement to the IaaS provider, the setup is ready to use in couple of hours. How? Since the provider company maintains a huge setup that include hundreds of servers, many racks of storage and variety of networks established, they just give access to use their setup limited to the given requirement. If the user needs an additional server or storage of different configuration, the provider just gives the access to use an additional system/ storage of the requested configuration type from their existing infrastructure within minutes. Then, it is user's responsibility to install the required operating system, databases, web server software etc to make the environment ready. If the user does not want to buy these softwares and do the setup, it is recommended to go for PaaS instead of IaaS.

PaaS (Platform as a Service)

PaaS provides a working computing platform to the user. When we talk about infrastructure, it just means to the physical setup that is required. It does not bother what operating system you install, what database you use, what web server you configure, which framework you want to develop your application etc. Platform means that the setup that is required to develop/ run your application/ product. It includes the infrastructure and the environment required to develop/ run your application (OS, DB, Web Server, IDE etc).

SaaS (Software as a Service)

If the user needs additional softwares like E-mail, CRM, ERP etc to run their business, there is another level of service provided by Cloud vendors - SaaS. It includes not only the infrastructure and the platform, any other supporting softwares/ packages required. It is nothing but outsourcing the entire IT operations.


Deployment

Till now we discussed about different levels of service that can be obtained from a cloud vendor. A user can also ask for the type of deployment - the way the requested service should be provided: Private, Public and Hybrid.

Private Cloud

It is a cloud operated separately for an organization. For example, when an organization subscribe to the PaaS service as private cloud, the infrastructure and the softwares/ environment is exclusively maintained for that organization by the cloud vendor. The resources are not shared to any other customer at any level by any means.

Public Cloud

It is a shared cloud where many customers share the resources. Here it is guaranteed that one customer's details/ environment are not visible to any other customer by any chance. However they may really share the common resources at the vendor's data center since the real allocation of resources by the vendor is completely hidden from the customers. The cost of a public cloud is less , compared to the private cloud.

Hybrid Cloud

When a customer needs some services which are highly critical and confidential along with other services which are normal IT operations, they go for hybrid model. In this, the critical part is provided as private cloud and the other services are provided by means of a public cloud. As the cloud service is provided in the combination of private and public, it is called hybrid.

Top players

The global leaders in the cloud technology are:

IBM (Smart Cloud)
Amazon (EC2)
Google (App Engine)
Microsoft (Azure)
Dell (Cloud Manager)
VMWare (vCloud Suit)
HP (Helion)

Jobs and Skills

There are many existing job roles in cloud industry and it would create lot more opportunities in the future. It is true that Java plays a major role in cloud jobs but it is not only language required to work on cloud solutions.

Cloud Architect

Job Description: Development and implementation of cloud-based initiatives to ensure that systems are scalable, reliable, secure, and supportable, and that they achieve business and IT performance.

Required Skills: 10+ years experience in large-scale, multi-platform networks; Expert in Shell, VBScript, Perl, or Python; Expert knowledge of Linux and Windows; significant experience in designing, installing and administrating virtual environment.

Cloud Software Engineer

Job Description: Responsible for design and development of distributed software modules that integrate with cloud service providers.

Required Skills: 2+ years professional experience in software development; work experience with ETL (Extract-Transform-Load) tools and techniques; work experience with system configuration and deployment automation technologies; hands-on programming experience on a Linux/Unix operating system; excellent understanding of at least one compiled-code language.

Cloud Engineer

Job Description: Plan and conduct technical tasks associated with the implementation and maintenance of internal enterprise-shared virtualization infrastructure.

Required Skills: 5+ years of implementation experience with highly virtualized shared infrastructure, platforms, or applications architecture at a large enterprise or service provider.

Cloud Services Developer

Job Description: Design and build the multi-platform customer-facing tools -- such as sales interfaces and management portals -- that serve as the gateway into how end users consume the underlying cloud services.

Required Skills: 5 years of experience with cloud architecture and design or 5 years of experience architecting and deploying Web services on SOA platforms (examples: Amazon EC2, Heroku, Azure, Rackspace) or 5 years of experience with PHP Python, Java, or C++ with software development methodologies like agile.

Cloud Systems Administrator

Job Description: Configure and maintain the systems that comprise the underlying cloud platform. Troubleshoot when problems arise and plan for future cloud capacity requirements.

Required Skills: 3 years of experience in operating system administration or 3 years of experience in supporting enterprise-level platform installations; strong Linux command-line skills; experience in performance monitoring and capacity planning for enterprise platforms.

Cloud Consultant

Job Description: Conduct technical studies and evaluations of business area requirements and recommends to IT management appropriate cloud technology options.

Required Skills: At least 8 years of related IT consulting experience; outstanding understanding of cloud technologies available and vendors providing cloud services; top-notch communication skills.

Cloud Systems Engineer

Job Description: Build the virtual systems that support the cloud implementation.

Required Skills: 5-10 years of systems engineering experience, holistic understanding of the Internet and hosting from the network layer up through the application layer; experience in a 24x7 hosting environment.

Cloud Network Engineer

Job Description: Perform the implementation, operational support, maintenance, and optimization of network hardware, software, and communication links of the cloud infrastructure.

Required Skills: 4 years' in-depth network engineering experience; proven deep understanding of TCP/IP, Subnetting, DNS, DHCP, NAT, and routing; strong knowledge of Layer 2 network protocols; strong knowledge of Layer 3 IP routing; proven scripting abilities in one or more language -- Perl, Shell, or Python.

Cloud Product Manager

Job Description: Perform product planning for cloud-based offerings including creating product concept and strategy documents, creating requirements specifications, identifying product positioning, and enabling the sales processes (licensing, pricing, packaging, benefits, etc)

Required Skills: Minimum of 3 years of experience working with a software development company that deploys its offerings using a SaaS or cloud-based model; very strong communication skills.

Cloud Sales - Cloud Sales Executive, Cloud Sales Representative, Cloud Sales Consultant, Cloud Sales Manager

Job Description: Develop and grow a book of outsourced cloud business with C-level professionals in midsize and enterprise-level customers.

Required Skills: 5-10 years business experience in client-facing roles, with some of that spent in outsourcing or systems integration; highly effective communication skills; strong understanding and successful experience in building strategic and/or developmental partnerships at the C-level within midsize and large corporations; demonstrated consistent quota attainment in selling infrastructure, IT, cloud, and security services.

More Info

Refer the below links if you need more info.

https://en.wikipedia.org/wiki/Cloud_computing
http://www.infoworld.com/

Questions?

Post here :)

Friday 22 August 2014

BIG DATA...What's The Big Deal?

Big Data...the most renowned term in the IT industry these days. What is it? Whats in it for a software professional? Have a glance here!

The Definition

Gartner defines this word as "Big data is high volume, high velocity, and/or high variety information assets that require new forms of processing to enable enhanced decision making, insight discovery and process optimization". Confused? Well, lets understand it.

High volumes of data

Big data is a science of information processing when the data is in huge volumes like some peta or exa bytes. (1 petabyte = 1024 terabytes and 1 exabyte = 1024 petabytes). In other words, one exabyte is equal to a 100 crore GB of data. As an individual we may know only about terabytes (TB) of data. At an enterprise level data sizes vary from petabytes to exabytes. Wondering which enterprise generates this much data? Think about facebook. Millions of people keep posting into their timelines at any point of time at a volume of single comment to an album upload of their personal event. Combining all this data will give a tons of load to facebook servers. Why should facbook worry? Keep the huge size clusters available to store all this data. No, its not just about storing data. Facebook has to analyze this data, find the trends like what people are talking about, what is the most discussed news/ event, etc. It is required to take the business decisions at organization level based on such analysis. If you think about the remote sensing data, genome code etc, the situation is still more complex.

DBMS/ RDMBS systems

Since the existing data solutions can process the structured/ organised information, there is a need of new techniques to process unstructured data. Also process of data in DBMS/ RDBMS happens only when the complete set of data is available. In this competitive world, business decisions to be taken so quickly which requires the processing of data while it is flowing in. 

Big Data

Hence big data works on huge sets of structured/ unstructured data, while it is flowing in, if required and process it and provides the analysis and/ or reports as required.  Different phases of data processing in Big Data includes capture (collecting the data), curation (extract the important data and preserve it), storage (save data on to the disk/ cluster), search (finding the required patterns), sharing and analysis (generate the data trends).

Some big facts ...

  • 90% of data in the world is unstructured
  • Human genome code took 10 years to process. Using Big data, it can be processed in one week
  • Data production in 2009 would increase to 4400% by 2020
  • In a day,
    1. The largest telescope that is expected to be operational by 2024 would gather 14 exabytes of data
    2. Surveillance cameras around the globe collects 413 petabytes of video data
    3. 46 petabytes of data flows through AT&T's networks
    4. Google processes 24 petabytes
    5. Walmart generates 2.5 petabytes of data
    6. Facebook processes 0.5 petabytes
Technical Frameworks

There are many big data frameworks available and Hadoop is the one and most famous framework. It is an open source framework and widely used in, across different products and enterprise editions of different companies. Other frameworks include Spark, Storm, HPCC etc.

Programming Languages used in Big Data

One of the widely used language for data processing is R. NoSQL and Python are also playing a key role as data processing languages. 

Enterprise solutions

Most of the global IT giants utilized this opportunity and converted the Big Data science into solutions to fulfill the needs of different organizations based on their data analysis model. Few of such solutions are:

  1. Google BigQuery
  2. SAP Hana
  3. IBM Infosphere 
  4. Microsoft Azure
  5. Oracle Big Data Appliance
  6. EMC Alpine, Pivotal
  7. HP Vertica, HAVEn
and many more!


Job Opportunities

Being an emerging technology, big data has lot of scope to create lot of job opportunities in IT space. The roles include Data Engineer, Data Scientist, Data Analytics Engineer, Data Architect, Data Warehouse Analyst, Business Intelligence Analyst, Data Modeler etc.

Certifications

Here is the list of top 10 certifications from the best institutions:

  1. Certified Analytics Professional - The Institute for Operations Research and the Management Sciences (INFORMS)
  2. Certification of Professional Achievement in Data Sciences - Columbia University
  3. Certificate in Engineering Excellence Big Data Anlytics and Optimization - International School of Engineering (INSOFE)
  4. Mining Massive Data Sets Graduate Certificate - Stanford University
  5. Certificate in Analytics: Optimizing Big Data - University of Delaware
  6. EMC Data Scientist Associate (EMCDSA) - EMC
  7. Cloudera Certified Professional : Data Scientist - Cloudera Inc
  8. Cloudera Certified Developer for Apache Hadoop - Cloudera Inc
  9. Cloudera Certified Administrator for Apache Hadoop
  10. Revolution R Enterprise Professional - Revolution Analytics

Other Certifications

1. HP Vertica Certification
http://www.vertica.com/customer-experience/certification/client-certification

2. Oracle Business Intelligence Foundation Suite 11g Certified Implementation Specialist
http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=654&get_params=p_id:166

3. SAS Certified Predictive Modeler using SAS Enterprise Miner 7 Credential
http://support.sas.com/certify/creds/pm.html

For more info ...

Big Data Wiki
https://en.wikipedia.org/wiki/Big_data

R Data Processing Language
www.r-project.org

Apache Hadoop
http://hadoop.apache.org




Wednesday 25 June 2014

Passionate about working in the US?

US is an icon of destination for most of the students and working professionals today. Many of them are just dreaming about it rather than finding the facts and paths. This is to highlight some of the basic factors and to give a glance on working/ studying in the US.

How to work in US?

It is not possible to enter in US without a job offer from a US company/ admission from a US University. So there is no way that you can get a visa, enter in US at your own cost and then find a job. US does not entertain such visas like other countries. The feasible path of working in US is on a non-immigrant visa such as L1, H1 or student visa like F1. US too have an immigrant visa offered which is EB class visa, however it is very tough to be qualified under this visa conditions.

Non-immigration class

L1 Visa

The well known visas L1 and H1 comes under this category. L1 is a work permit for intra company transfers. That is when there is a requirement for an employer to transfer their employee to US under special knowledge category or to setup their branch in the US. Obviously, employer has to file the L1 visa on behalf of their employee. Initially L1 visa is granted by USCIS (US Citizanship and Immigration Services) for 3 years and extendable upto 5 years. Along with employee, spouse and unmarried children under 21 years of age are also allowed under L2 visa classification. Spouse of an L1 visa employee also can work in US under L2 visa. 

There are two categories in L1 visas. L1-A for executives/ managers of the company and L1-B for special knowledge skilled employees. L1 visas are tied with the employer and hence cannot work for other companies in US on L1. L1 visas can be filed by the employers at any time in the year.

H1B Visa

H1B is a work permit for specialty occupations. Again there must be a job offer from a US company to be qualified for this visa. However it is possible to switch the company after landing in US.Initially visa is granted for 3 years and may extend up to a maximum of 6 years. There is a cap of 65000 on the number of H1 visas every year. On top of it, another 20000 H1B visas are issued for the Master's degree holders from the US Universities/ institutions.  The filing starts on 01-April of every year and the person can travel on or after 01-Oct of the same year. That means if a person files H1B visa on 01-Apr-2014, he/she can travel after 01-Oct-2014 only, even though the visa is approved earlier than 01-Oct-2014. If the number of applications are more than 65000, USCIS follows the random selection process (i.e. lottery system) to choose the 65000 petitions out of the total applications received. During Apr-Oct, USCIS reviews and approves the chosen 65000 petitions.

Family of a H1B visa holder can also travel to US under H4 visa category. Spouse and unmarried children under 21 years of age are allowed along with H1B visa older. Spouse of a H1B visa holder is not authorized to work in US.

Some facts about H1B:

* Even though the quota is 65000 + 20000, there will be some more visas available which are denied, rejected or withdrawn from the last year quota. These unfilled numbers will be carry forwarded to next year.
* H1B petitions for employment in Universities, Hospitals and Non-profit organizations are cap exempted and can be filed at any time during the year.

Immigration Class

As per USCIS, there are 140,000 immigration visas available for foreigners every year. Visa classes from EB1 to EB5 are the immigration visas. However the expected eligibility criteria for these classes is very high. These visas are usually approved for highly educated (Masters/ Ph.D) and experienced (10+ years) research scholars and scientists or the experienced people who filed many patents in their technology area.

EB-1: Extraordinary ability, Outstanding professors and researchers, multinational managers/ executives
EB-2: Advanced degree, Exceptional ability (Masters/ PhD with 10+ years of experience)
EB-3: For skilled workers not available in US
EB-4: Religious workers, Broadcasters, Physicians etc
EB-5: Business investors investing in US business

There are fake consultancies in India who encourage the professionals with 10+ years of experience to file EB2 visa but it is not that easy to get the visa approved under this category. Do not get trapped by such fake offers.

Student visa class

F1 (Academic Student) and M1 (Vocational student) visas are intended for the students who want to study in US. These visas can be applied at any time during the year after getting the admission in a US institution for a full-time course.

Family of F1/ M1 visa holder (spouse/ children) are allowed to enter in US under F2/ M2 visa class respectively.

Only schools certified by the Department of Homeland Security’s Student and Exchange Visitor Program (SEVP) are authorized to accept international students. Check whether the school/ college which you got the admission into is listed in SEVP certified schools or not, using the below link.
http://studyinthestates.dhs.gov/school-search

Different educational programs offered in US

Go through the below link to find the options you have, to study in US.
https://www.educationusa.info/5_steps_to_study/

Student Employment

F1 students cannot work off-campus for the first year and can work withing the campus. After first year of education, they can take the outside employment which should be related to their area of study and should be approved by the school/ college officials.

Cost of study

The cost of study in US depends on the state, institution and the course. Compared to engineering, medical and management courses are costlier. For private universities it ranges from $15000 to $30000, for public universities, it ranges from $10000 to $20000 and for community colleges, it ranges from $8000 to $12000. These costs are just the cost of education excluding the cost of living. The cost of living is approximately $15000 to $25000 per year including rent and living expenses for a family. Again the cost of living varies from state to state.

For more details...

The official USCIS website is the best source of information for any kind of visa related details.
http://www.uscis.gov/

Other good websites that can be referred are:

http://redbustous.com/
http://www.ustraveldocs.com/
http://www.immihelp.com/