Tailoring Your DevOps Transformation to Organizational Culture – Idexcel DevOps Roundup

devops team work

1. Tailoring Your DevOps Transformation to Organizational Culture

In the ‘2016 State of DevOps Report’ the Westrum Model [1] of organizational culture is proposed. It focuses on information flow, high cooperation and trust as predictive factors of DevOps success in a company. It is a perfect future state design tool which, however, tells little about where your company is at the moment. Moreover, it does not suggest how to influence an organizational culture and in which direction it should change. Read more…

2. How to Set Up a Continuous Delivery Environment

With the increasing popularity of microservices, more and more is being said about Continuous Delivery. There are many interesting books and articles about that subject. There are also many tools and solutions that can help set up a Continuous Delivery environment. Read more…

3. DevOps done right: Why work-life balance matters to digital transformation success

As enterprises in every industry grapple with digital transformation, and fixate on meeting user demands for always-on services, IT departments find themselves under growing pressure to perform and deliver. Read more…

4. Is DevOps security about behavior or process?

One of my main roles is improving the security of the software produced by my employer, and it was in that role that I attended the annual gathering of the security industry in San Francisco last week. The RSA Conference is one of the two global security conferences I attend, the other being Blackhat. While Blackhat has become more corporate, it’s still dominated by hackers and focuses more on vulnerabilities, whereas RSA is very much a corporate event focused on enterprise security and security policy. Read more…

5. Finance industry leading the way in DevOps implementations, research says

Financial services firms are embracing DevOps approaches and best practices more quickly than other industries, according to new research from managed services provider Claranet. Read more…

AWS Still Owns the Cloud

When Amazon announced its earnings for its Amazon Web Services cloud division on Thursday, the results were hardly surprising. While AWS might not have the eye-popping growth percentages of its rivals, it still grew at a decent 47 percent, with earnings of $3.53 billion on an astonishing $14.2 billion run rate.

You may point to the rivals and say, well, they had better quarters from a growth standpoint, but it’s important to remember it’s easier to grow from a small number to a bigger small number than it is to grow from a big number. In that sense, AWS could be seen simply as a victim of its own success. Read more…

OpenStack Summit Boston, MA | May 8-11, 2017

Date : May 8-11 2017

Location : Boston, MA

Venue : Hynes Convention Center

THE MUST-ATTEND: Open Infrastructure Event

The world runs on open infrastructure. At the OpenStack Summit, you’ll learn about the mix of open technologies building the modern infrastructure stack, including OpenStack, Kubernetes, Docker, Ansible, Ceph, OVS, OpenContrail, OPNFV, and more. Whether you are pursuing a private, public or multi-cloud approach, the OpenStack Summit is the place to network, skill up and plan your cloud strategy.
Hear business cases and operational experience directly from users, learn about new products in the ecosystem and participate in hands-on workshops to build your skills. Attended by thousands of people from more than 60 countries, it’s the ideal venue to plan your cloud strategy and share knowledge about architecting and operating OpenStack clouds. [Know more about the Conference]

Top Ten Must-Read Cloud Computing Blogs

cloud banner

1. Reddit – Cloud computing

About Blog: News, articles and tools covering cloud computing, grid computing, and distributed computing.

Link: reddit.com/r/cloudcomputing

2. Amazon Web Services (AWS) – Cloud Computing Services

About Blog: Amazon Web Services offers reliable, scalable, and inexpensive cloud computing services.

Link: aws.amazon.com/blogs/aws

3. Google Cloud Platform Blog

About Blog: Google Cloud Platform’s blog contains hundreds of articles written by Google cloud experts. You will find product updates, customer stories, and tips and tricks on Google Cloud Platform.

Link: cloudplatform.googleblog.com

4. Infoworld – Cloud Computing

About Blog: Business technology, IT news, product reviews and enterprise IT strategies.

Link: infoworld.com/category/cloud-computing

5. Cloud Tech

About Blog: CloudTech is a leading blog and news site that is dedicated to cloud computing strategy and technology.

Link: cloudcomputing-news.net

6. All Things Distributed

About Blog: All Things Distributed is written by the world-famous Amazon CTO Werner Vogels. His blog is a must-read for anyone who uses AWS. He publishes sophisticated posts about specific AWS services and keeps his readers up-to-date on the latest AWS news.

Link: allthingsdistributed.com

7. CloudTweaks

About Blog: Technology News Articles – Cloud, Big Data, IoT News and Resources.

Link: cloudtweaks.com

8. Cloud Computing Magazine

About Blog: One of the most active and extensive cloud blogs available. Its posts are from numerous writers from across the cloud industry.

Link: cloud-computing.tmcnet.com

9. Talkin’ Cloud

About Blog: Cloud Computing Industry News Trends for cloud services providers (CSPs), managed services providers (MSPs) and value-added resellers (VARs).

Link: talkincloud.com

10. Compare the Cloud

About Blog: Compare the Cloud is one of the Internet’s most popular sources for cloud industry information.

Link: comparethecloud.net

Microservices Architecture Advantages and Challenges

I was asked to review an architecture diagram for an application that would use MicroServices. I could find few REST APIs in the diagram connecting to a single database.

That raised tons of questions:

1. Only one database?
2. What if the database is down?
3. All services will be hosted in a single server?
4. What if I need to upgrade the server?

What is MicroService?

It will not be an easy task to define MicroService in a single statement. The definition depends on different viewpoints & requirements. However, most of the prominent characteristics of MicroServices are:

• They encapsulate a customer or business scenario.
• They are developed by a small development team.
• They can be written in any programming language and use any framework.
• OOPS concept is implemented in loosely coupled manner
• The Codebase is small that are independently versioned, deployed, and scaled.
• They interact with other MicroServices over well-defined interfaces and protocols.
• They have unique names (URLs) that can be used to resolve their location.
• They remain consistent even after failures.

SOA vs Microservices

Microservice is not only SOA. If Microservices are to be defined, is simply an ideal, refined form of SOA. SOA focuses on imperative programming, whereas MicroServices architecture focuses on a responsive-actor programming style. It’s something like decomposing a large monolithic service into smaller independent services which are self deployable, sustainable & scalable.

Microservice Architecture – Overview

Just as there is no formal definition of the term MicroServices, there’s no standard model that you’ll see represented in every system based on this architectural style. But you can expect most MicroService systems to share a few notable characteristics.

1. Software built as MicroService can be broken down into multiple components, so that each of these services can be deployed, and redeployed independently without compromising the integrity of an application.
2. The MicroServices style is usually business and priorities centric. Unlike a traditional monolithic development approach, MicroService architecture utilizes cross-functional teams. In MicroServices, a team owns the product for its lifetime, as in Amazon’s oft-quoted maxim “You build it, you run it.”
3. MicroServices have smart endpoints that process info and apply logic, and dumb pipes through which the info flows. They receive requests, process them, and generate a response accordingly.
4. Decentralized control between teams, so that its developers strive to produce useful tools that can then be used by others to solve the same problems.
5. MicroServices architecture allows its neighbouring services to function while it bows out of service. This architecture also scales to cater to its clients’ sudden spike in demand.
6. MicroService is ideal for evolutionary systems where it is difficult to anticipate the types of devices that may be accessing our application.
MicroService architecture uses services as small components and is usually business centric; focuses on products functionality; has smart end points but standard input/output mechanisms; is decentralized, as well as decentralized data management; is designed to auto scale & is resilient to failure; and, of course is an evolutionary model.

Knowledge Needed to Implement MicroService

To conclude our brief overview of microservices here, we need to have a basic grasp of the following concepts:
• Object Oriented Programming (OOP) with loose coupling techniques
• Web service / API/ REST—a way to expose the functionality of your application to others, without a user interface
• Service Oriented Architecture (SOA)—a way of structuring many related applications to work together, rather than trying to solve all problems in one application
• Single Responsibility Principle (SRP)—the idea of code with one focus
• Interface Segregation Principle (ISP)—the idea of code with defined boundaries.

Advantages of MicroService

• Evolutionary Design – No need to rewrite your whole application. Add new features as MicroServices, and plug them into your existing application
• Small Codebase – Each MicroService deals with one concern(SoC) only – this result in a small codebase, which means easier maintainability
• Auto Scale – freedom to scale only the loaded service, as that service will handle the bigger load.
• Easy to Deploy – Deploy only the needed codebase, instead of redeploying the entire application.
• System Resilience – If some of the services go down only some features will be affected, not the entire application.

Challenges of MicroService

The MicroService architecture helps a lot, but comes with its own challenges.
• Inter Service Communication – MicroServices will rely on each other and they will have to communicate. A common communication channel needs to be framed using HTTP/ESB etc.
• Health Monitoring – There are more services to monitor which may be developed using different programming languages.
• Distributed logging – Different services will have its own logging mechanism, resulting GBs of distributed unstructured data.
• Transaction Spanning – MicroServices may result in spanning of transactions over multiple services & database. An issues caused somewhere will result is some other issues somewhere else.
• Finding root cause – Distributed logic with distributed data increases the effort of finding the root cause. The performance related root cause can still be managed using APM tools like New Relic & Dynatrace.
• Cyclic dependencies between services – Reproducing a problem will prove to be very difficult when it’s gone in one version, and comes back with a newer one.

Conclusions

MicroServices architectural style is an important idea – one worth serious consideration for enterprise applications. A Monolithic architecture is useful for simple, lightweight applications. It will be a maintenance nightmare if used for complex applications. The MicroServices architecture pattern is the better choice for complex, evolving applications despite the drawbacks and implementation challenges.

MicroServices is prevalent for a long time and recently we are seeing increase in their popularity. There are a number of factors that lead to this trend with scalability being probably the most important one. Utilization of MicroServices by “big guys” like Amazon, NetFlix, eBay, and others, provides enough confidence that this architectural style is here to stay.

Top 6 Disruptive Trends: Shaping the Future of Public Cloud

ccom
Talking of public cloud, provisioning storage, launching VMs and configuring networks are no more cutting edges. New IaaS capabilities enable enterprises to operate their workloads in the cloud. Innovative Cloud services are helping organisations drive transformation through agility, cost effectiveness and reduced IT complexities. With IaaS evolving at a rapid rate, the public cloud is seemingly gearing up to the next level.

Cloud providers have already started investing in emerging cloud technologies that will deliver managed services to the customers. Here are six disruptive trends that are shaping the future of the public cloud.

Serverless Computing:

Serverless Computing or more precisely, FaaS(Functions as a Service) focus on code instead of infrastructure – delivering what PaaS promises. It enables developers to write modular functions that perform one task at a time. By writing and executing multiple such functions, a meaning and complex application is built. The best part is, it allows developers select framework, language and runtime of their choice instead of using a particular platform. This implies, each developer has liberty to choose his preferred language and deliver a module.

Serverless Computing or FaaS is rapidly becoming the most preferred way of running code in the cloud.

Blockchain as a Service:

Bitcoin is considered dead long ago, but the technology behind it is alive and kicking to make public cloud all the more powerful. Blockchain is a cryptographic data structure used to create a digital ledger of the transaction happening across distributed networks of computers. It eliminates the need for central authority as cryptography is the only medium to manipulate ledger. However, in this environment, transactions are immutable meaning operations once made cannot be modified. Transactions are verified by the parties involved in the transaction.

Blockchains have many use cases in the domains spanning across manufacturing, finance, healthcare, supply chain and real estate.

Cognitive Computing:

Cognitive Computing adds human senses to the computers. It simulates human thoughts by applying latest technologies like natural language processing, machine learning, neural networks, deep learning and of course, artificial intelligence.

Multiple factors fuelling the trend of Cognitive Computing are affordable hardware, abundant storage, seamless connectivity and compute capacity.

Heavy lifting needed to process the inputs for cognitive computing is handled by deep-pocketed cloud providers. Only the simplest of APIs are exposed for the developers to comprehend and build compelling interfaces for applications.

Data Science as a Service:

Managed NoSQL and relational database started data revolution in the cloud but Hadoop and Big Data empowered the public cloud.

Public Cloud Data Platform takes care of everything spanning from data ingestion to processing, analysis and visualisation. Machine Learning for data enables organisations to tap the power of data analysis and execute predictive analytics.

As organisations are shifting data to the public cloud, they will be catered with an end-to-end approach by the cloud providers for more actionable insights to customers.

Verticalized IoT PaaS:

Internet of Things – the next big thing that is taking distributed computing network by storm already is deployed by organisations for device management capabilities, predictive analytics, data processing pipelines and business intelligence.

Mainstream cloud providers are reaping the benefits of IoT to drive device management, data processing capabilities and cloud-based M2M connectivity.

It is expected that going forward; the cloud providers will use IoT platforms to target automobiles, retail, manufacturing, healthcare and consumer markets. It is soon going to become the prime enabler for Data Science as a Service.

Containers as a Service:

Containers have already buzzing in the cloud market. Though it is as young as two years old, enterprises are readily using containers alongside VMs.

New categories like orchestration, logging, security, monitoring and container management are evolving rapidly. However, when microservices and container workloads become mainstream, they will increasingly dominate the public cloud deployment space. It is poised to be the fastest growing delivery model in the arena of the public cloud.

In conclusion, it is inferred that future of cloud is dictated by the data driven applications powered by Blockchains and IoT. Containers, Serverless Services and the Microservices will be used to deal with the abundance of data hitting the cloud!

The 7 Most In-Demand Programming Languages of 2016

success
As technologies are gaining momentums by each passing day, there is a growing demand of developers having strong commands in programming languages worldwide. Web programmers and developers should stay current with the newer emerging programming languages and stay competitive always in the market. Presenting to you top 10 programming languages that you should keep yourself updated with.

Java:
Java is currently ruling the list of top 10 programming languages to learn with No. 1 position due to its usability in mobile based applications, creating desktop applications, enterprise level purpose and establishing Android apps in tablets and smart phones.
Beginners’ friendly Java is simple to use, easier to maintain, shows optimized performance and faster to deploy. It is the third most demanding language in Angel list as top tech giants like Google and Amazon use Java to develop backend of their websites.
The interest learning of Java in 2015 grew by 22.4% implying it is being adopted by new blood and is going to stay here for years to come!

PHP:
80% of top 10 million websites uses PHP. PHP is designed for the web and “Facebook” stands the best example!
5 reasons that make PHP as the favourite pick for leading companies worldwide are:
• Results faster site loading
• It is an open source programming language, hence less expensive
• It requires a LINUX server to run which is easily available through various hosting providers, hence less expensive to host too!
• It supports all major databases.
• Websites built with PHP are easy to customize.
Given that PHP is so widely being adopted globally, the career prospects of a PHP developer are bright! If you a programmer, looking to fuel your wings and warm up your bank account, PHP is the language for you!

Javascript:
Javascript helps you build interactive websites and is an essential web technology alongside CSS and HTML. Further, Javascript is now used for mobile app and desktop app development too. Few more reasons to demonstrate why Javascript is widely and rapidly being adopted are:
• It is easy to pick up as it is higher level language which means it shields the complex details of the machine.
• It is Fun to work with Javascript as it is primarily used for front end development and has various tools that allows to easily get a working prototypes.
• With new nifty tools emerging quite frequently to use Javascript, it has become GitHub’s most-tagged language.
• TIOBE Index ranks it as 6th most popular language with interest in learning Javascript grew by 22.3% in 2015.
Javascript shows growth stability in terms of adoption rate. Have you started adopting it yet?

Python:
Python is a general purpose language meaning it can be used to build anything. It is made easy with its line of right tools and expansive library.
It finds more utilization in backend web development, artificial intelligence, and scientific computing and data analysis. Productivity tools, video games and desktop apps are also built using Python.
Why Python is developers delight? Few points to advocate:
• It’s easy to understand
• Being a dynamically typed language, Python is highly flexible.
• It is 4th most used language in GitHub
• 4th most popular language in TIOBE index.

Objective – C:
C is the mother of all languages. Since the time C compilers fell into the hands of experts, innovations took flight! Compared to other programming languages like COBOL and FORTRAN, C offers more efficiency and performance.
How C empowers the technology world?
• Microsoft Kernel is C coded.
• Linux is mostly written in C.
• Mac Computers operates on C. The OS X kernel is written in C due to which every program and driver in Mac runs on C.
• iOS, Windows and Android Kernels are developed with C.
• World’s leading databases Oracle, MS SQL Server, MySQL and PostgreSQL are coded in C.
• 3D movies are developed using applications written in C and C++.

Swift:
If you want to build native iOS or Mac OS apps, you need to learn Swift. Native apps outperform cross platform hybrid apps while the built-in SpriteKit makes 2d game building ever easier with Swift.
Inspired by Python and Ruby, Swift is beginner’s choice which helps in terms of motivation. Few perks of Swift:
• It is a statistically typed language where xCode checks error prior to building of app, implying it being easier to track down.
• It is faster than dynamically typed language ensuring efficient app executing without wastage of phone memories.
• Swift uses Automatic Reference Counting (ARC) which track and manage app memory in real time ensuring not much memory space is eaten up.

Ruby:
Ruby is a very high level language meaning it abstracts away – it handles for you! It helps you develop anything from scratch faster with less lines of code.
Why should Ruby be your ultimate pick?
• It was designed to make programming fun. It reads English making it highly easy to get started with for beginners.
• It is a dynamically typed language and hence it doesn’t have any hard rules on building features. It is, thus, highly flexible and forgiving of errors meaning you still will be able to run your program before hitting the error code.
• It is 3rd most tagged language in GitHub.

Emerging Trends and Challenges of IT Staffing Services Globally

it-staffing-challenges
Comprehending the latest staffing trend is critical to the development of client base, recruiting top talents and boosting business growth. While the key priorities of a business should be adding new clients, hold strategic business partnerships and improve sourcing strategies, focus needs to be given on recruiting best talents too! Businesses need to spend a little more time than usual on building relationships with clients and colleagues.

Latest Trends in IT Staffing

Promote Branding:
2015 saw the growth of staffing and recruiting firms worldwide by 71% which is expected to grow by 91% by the end of 2016. But what exactly is driving this growth?

Majority of the growth is reliant on existing client relationship. Last year businesses reported that revenue was largely incurred through repeat business. Expanding the client base and reaching out to new potential clients was back listed by lower priority levels.

Client base expansion needs to be knocked with a wakeup call. They have to bring new clients into their eco system and to do so; they have to get their brands out there. Leading social media networks and professional connects like LinkedIn will remain the matchless path to promote business, but IT staffing firms will have to up the ante if rising above competition is their ultimate goal. Extensive networking and brand management will remain the top priority for all IT staffing services for years to come!

Flexible Staffing Model:
Sadly, only 22% of CIOs plan to higher full time employees to increase the size of team while other 78% are eager to maintain their existing team size or even reduce it, if possible. But still we see the demand for seasoned professionals continue to grow. So, how does one reconcile the two different objectives in hiring trends today?

Hiring full time employees is expensive but it is imperative to hire new talents as they fuel the growth of technology initiatives in a company and contribute in raising the company above the competition. We see companies welcoming flexible staffing model. Flexible staffing model help companies have full time staff levels for average workloads and hire subject matter experts to augment their existing staff strength during peak workloads and fill skill gaps in teams when required. This approach is highly cost effective while being nimble as technology initiatives pass through typical phases of planning, support and implementation.

Hiring Passive candidates:
No wonder, the best talents in the industry are already employed. Relying on traditional hiring processes leaves IT staffing services wad on a shallow pool of talents. Hiring passive candidates are their ultimate solution. These are those candidates who are not looking for change but if given a chance with better offers will surely leap the opportunity!

Unfortunately, in-house staffing team have no time to identify the passive candidates in the market. According to LinkedIn, only 22% businesses make passive staffing their priority. Hiring Passive Talents seems to emerge with full strength in upcoming years.

Challenges in IT staffing

Strike balance between quality and quantity of resources hired:
While 62% IT staffing companies reported that placement total remained their top revenue driving source, businesses are still failing to identify the gap between quality and quantity of resources being hired. The foremost challenge that IT staffing services face – the lack of quality candidate. Nearly 1 out of 4 businesses report there is an extreme skill shortage in their company because of which they recruit repeatedly for same position year after year.

According to a 2015 report, businesses still struggle to decide on best resources for their positions. A greater focus on data intelligence stemming out of CRM software might help to reduce the concern a bit! It can show which hiring processes are performing well for company growth and the processes which are proving to be non-performing!

Concerns on Employee Retention

A survey conducted by Careerbuilder & Sologig.com suggests 34% employers are concerned on their smaller team size and fear retention of existing employees. Most talented and experienced employees are attracted with better lucrative offers – ever reducing the team size and impacting company’s growth and innovation! This clearly suggests only those who incentivize and scales up salaries regularly are top market players.

Other challenges include:
• 26% businesses agree deficit in implementing new technologies and software to recruit resources effectively and efficiently.
• 8% say more improvements need to be done on implementation of data intelligence and analytics.
• 29% felt the need to increase pipeline quality.
• 30% felt their open positions aren’t been filled with quality.