  Context: DevOps practices combine software development and IT operations.
There is a growing number of DevOps related posts in popular online developer
forum Stack Overflow (SO). While previous research analyzed SO posts related to
build/release engineering, we are aware of no research that specifically
focused on DevOps related discussions. Objective: To learn the challenges
developers face while using the currently available DevOps tools and techniques
along with the organizational challenges in DevOps practices. Method: We
conduct an empirical study by applying topic modeling on 174K SO posts that
contain DevOps discussions. We then validate and extend the empirical study
findings with a survey of 21 professional DevOps practitioners. Results: We
find that: (1) There are 23 DevOps topics grouped into four categories: Cloud &
CI/CD Tools, Infrastructure as Code, Container & Orchestration, and Quality
Assurance. (2) The topic category Cloud & CI/CD Tools contains the highest
number of topics (10) which cover 48.6% of all questions in our dataset,
followed by the category Infrastructure as Code (28.9%). (3) File management is
the most popular topic followed by Jenkins Pipeline, while infrastructural
Exception Handling and Jenkins Distributed Architecture are the most difficult
topics (with least accepted answers). (4) In the survey, developers mention
that it requires hands-on experience before current DevOps tools can be
considered easy. They raised the needs for better documentation and learning
resources to learn the rapidly changing DevOps tools and techniques.
Practitioners also emphasized on the formal training approach by the
organizations for DevOps skill development. Conclusion: Architects and managers
can use the findings of this research to adopt appropriate DevOps technologies,
and organizations can design tool or process specific DevOps training programs.
