Agile Software Development

This is a summary of the services we provide within the software development branch.

Implementation & Maintenance of Large Software Systems

  • Enterprise Java, C# and C/C++
  • HTML 5, JavaScript, CSS and JSON/XML
  • Perl, PHP, Python, Groovy, Scala and Ruby
  • Shells, awk, sed, Yacc/Bison/JavaCC/ANTLR and f/lex
  • JavaScript, CoffeeScript, and TypeScript development with React, Flux/redux, Angular, Backbone, ExtJS, also Node.js
  • Web and GUI development with Spring MVC, Symfony 2, Wicket, Grails, GWT, Flask, JSP, JSF and Swing
  • JMS, JPA, JAX-RS & JAX-WS with Apache Axis/CXF, JAXP/JAXB, JNDI, RMI and JTA
  • Object-relational mappers like Hibernate & Doctrine as well as distributed shared memory caches
  • Inversion-of-control-frameworks such as Spring, Google Guice and CDI
  • Search engines & tools like ElasticSearch and Solr/Lucene/Hibernate Search
  • Enterprise integration with Apache Camel and ESBs, messaging with ActiveMQ and rule engines like Drools
  • Big Data applications with Hadoop, Kafka, Flink, Storm and Spark
  • Image recognition by means of deep learning/machine learning
  • Complex e-commerce solutions based on the hybris Commerce Suite and the hybris Commerce Accelerator
  • Reactive applications with Akka
  • Aspect-oriented programming with Spring AOP and AspectJ
  • Database migrations with tools like Flyway or Liquibase

Architecture & Design

  • Software architecture & documentation e.g. with arc42
  • OOA/D with UML and design patterns
  • Distributed systems with SOAP & REST web services, EJB, Corba, RMI and RPC
  • Responsive Web Design & User Experience (UX)

Test & Quality Assurance

  • Test-driven development and test automation with Continuous Integration systems like Hudson/Jenkins
  • Test tools like JUnit/TestNG/FitNesse, Hamcrest/FEST/Mockito, Concordion, Behat, JGiven, AssertJ, Selenium/Geb and Jasmine
  • Quality management with SonarQube™, PMD, FindBugs, CheckStyle, PHPLint, PyLint and JSLint
  • Code reviews and software verification
  • Performance testing & tuning
  • Analysis of concurrency and memory leak issues

Operating & Development Environments

  • JEE application server like Tomcat, Jetty, JBoss, WebLogic and WebSphere
  • Portal servers like Liferay
  • Relational databases like Oracle, PostgreSQL, MySQL, SQL Server
  • NoSQL databases like CouchDB or MongoDB with node.js and Python Tornado
  • Operating systems like Unix and Windows, virtual machines, parallel supercomputers and clusters
  • Build systems with Ant, Ivy, Maven, Gradle, npm, Grunt, Gulp, Phing, Composer, NAnt, NuGet
  • Version control systems with Subversion, ClearCase, Git (GitHub/Stash/BitBucket) and Mercurial
  • Artifact management with Nexus/Artifactory
  • Wikis and bug trackers like Confluence, JIRA, Trac and Crucible
  • IDEs like Eclipse, IntelliJ, PHPStorm and CLion
  • Development for mobile devices on iOS and Android
  • Docker, virtualization with oVirt, Xen and VMware
  • Cloud- and SaaS-platforms such as Google App Engine and AppExchange

Services, Processes & Requirements

  • Best practices software development with Scrum, Kanban, Lean SW Development and Extreme Programming / XP
  • Language- and tool-agnostic implementation of business software
  • Restructuring of ongoing third-party projects as well as troubleshooting and refactoring of legacy code
  • Agile requirements engineering, user stories/story mapping
  • Firefighting
  • Trainings, workshops and know-how transfer