Service Provider Software Development
Service provider software development – we program software for other companies.
Apart from standard software adaptations and interface developments, we at HighPots as a service provider for software development are largely concerned with custom software development.
What kind of software development services do we provide?
We program mostly web-based applications and mobile applications on behalf of our customers.
Our complete software development portfolio, across all software development company branches, can be found here: Overview Software Development – table-based overview Service Provider Software Development.
Where do we provide the software development services?
We program software for our customers where the customers want it. For example at the customer’s site, in Germany or Switzerland or in Tbilisi/Georgia.
Since 2011 we also have a branch in Germany for Software development Frankfurt.
From the perspective of a medium-sized company like HighPots, Frankfurt is a relatively large software development branch of ours. Therefore further information can also be found here: Customized software development Frankfurt.
In addition, we have a branch for Softwaredevelopment Zurich. We work for corporate clients in Switzerland or in the border area to Switzerland.
We are also service providers of software development for nearshore and offshore software development.
Why did our customers choose HighPots as their software development service provider?
In the end is a usable product as a result of our software development service
We at HighPots develop software pragmatic and reliable.
We combine the most important core components within software development:
- Requirements Engineering / Requirements Management
- Software development
- Data Analytics
- Software tests
- technical project management
We feel comfortable in many project management environments.
Regardless of whether agile software development services are required, or within waterfall or spiral models. A mixture of everything, too.
Services Software development at a good price/performance ratio
With our offices spread across three relevant countries, we can offer low-cost nearshoring software development services that can be tax-optimized through our Swiss office.
Who are our customers?
Our customers are very large companies such as the Signal Iduna Insurance Group, the travel group TUI or the mineral oil group Conoco. But smaller companies have also been part of our customer base for many years.
Software development service provider with experienced and well trained employees
Our employees are highly trained at top universities and have professional experience, creativity, passion and energy.
Our software developers work alternately for HighPots internal projects as well as for customer projects.
Thus we share the personnel resources and experiences with our customers.
We know the strengths and weaknesses of each employee and can therefore fill a software development project team in the best possible way.
Aimed at the future – innovative software development services for quantum computers
Like most progressive software development services companies, we at HighPots also work with Machine Learning, Deep Learning and Reinforcement Learning.
Since 2013 HighPots has also been software development service provider for the development of software for quantum computers.
We are a member of the European Quantum Technology Community and also a research partner in the European Human Brain Research Cooperation.
Web-based software development
In the area of web-based software development, we redevelop entire applications and interfaces. However, we also develop applications and websites in content management systems or on social platforms. All our web applications are responsive and therefore suitable for mobile devices.
New web-based applications
For the software development in the backend we mostly program in Java. The framework Java Spring Boot is often used here. Many customers also prefer PHP. Our software development often works in the PHP environment with the frameworks ZEND, Laravel or Apigility. Our software development also uses Python in the areas of machine learning and artificial intelligence. For example, in automatic text recognition with Python it is very easy to give a word or a word combination a unique vector. Increasingly we also develop in the programming language Go from Google.
Integrated development environments in software development
Some of our developers love the IDEA IntelliJ from Jetbrains. Others have been getting used to Eclipse for years.
Repository and bug tracking
Our software development as well as our customers work with Git and GitLab/GitHub as well as with JIRA.
Requirement management and requirement engineering in software development
UML schemata, sequence diagrams, workflow diagrams and actually also the entire Business Process Management (BPM) are mostly mapped with the Enterprise Architect. Draw.io is also used for smaller projects.
CMS software development
Few companies nowadays program their corporate presences natively on the web. Most of our corporate customers use content management systems for their websites. Due to marketing measures, which are often carried out by non-technical personnel, content management systems are better suited than native-programmed websites. Search engine publishers reward new content that should be implemented independently of software developers. For the company FTI in Munich, for example, we are currently developing the web portal fly.de.
Experiences and developments with content management systems
Our software development works with the three common Content Management Systems (CMS). We are deeply rooted in these three systems. In these three CMS we develop our own templates, interfaces and automate processes. We work with different mirrored systems for test and live operation. We also take advantage of the multi-client capability of these systems. Specifically, these are the following content management systems:
- Drupal Development
- WordPress Development
- Typo3 Development
Interfaces in web-based software development
In the age of digitalization, not a day goes by without us developing one or more interfaces. The connection of systems with each other (M2M) as well as the networking of systems with people, is everyday life for software development. In web development, for example, we use Java Script Object Notations (JSON), Representational State Transfer (ReST), Simple Object Access Protocol (SOAP) to execute Remote Procedure Calls (RPCs). The data is represented by XML. From time to time, however, other Web APIs are also used.
Software Development for Mobile Devices
We develop apps for Android and Apple devices. And we develop apps for Windows 10 devices and the Microsoft App Store. The sharp separation between mobile and fixed devices is increasingly disappearing. This is a result of the reduction in the size of electronic components and thus of end devices. Even desktop PCs and workstations are getting smaller and smaller. In the gaming sector, players often take their game consoles or desktop PCs with them to friends or LAN parties. For software development this means that everything is or will become mobile. The plans of our corporate customers, especially B2C companies, always include apps for mobile devices. The reasons for this are mostly to be found in marketing. Because collecting data about users is easier with apps that are installed locally on end devices than with a web application. But also hybrid progressive web apps with responsive design bring more and more possibilities with them.
The software development of apps for the Android operating system follows with Java and Kotlin. For Apple devices we use the programming languages Objective-C and SWIFT.
Gamification Software development
The software development in gamification is a strong core competency of HighPots. In the foreground are simple games, which are played by the users in short breaks without training time. For example in the bus, in the train, in the school break or the breakfast break in the office. The intelligence of the games lies in finding out as much as possible about the users in a short time. This means that user behavior is stored in real time and visualized in a dashboard. The front ends of the games, also known as gameplay, are available as web apps, Facebook apps or stand-alone apps. From the perspective of software development, the dashboard is the heart of the game. It was programmed in Java and has interfaces to numerous (machine learning) components.
We therefore have a lot of experience in the field of gamification software development. However not only in the development of the software, but also in the marketing and operation of the application.
Our software development team will be happy to develop a game for you and start from scratch. Or our software developers adapt one of our existing games as a whitelabel-gamification for you.
Our gamification software development includes:
- Online Games / Browser Games
- Games as locally installable apps for Android, Apple or Windows10 devices
Software testing and test automation in software development
You have a right to error-free software including comprehensive documentation.
Depending on the scope and budget of the project, we program extensive application tests.
Test automation ensures that the same tests do not always have to be repeated.
Test planning, test preparation and test specification are carried out by our ISTQB-certified software testers right at the start of a software development project. The test execution, test evaluation, and test completion required for software acceptance complete the testing process.
For extensive agile software projects we rely on test automation and standardization according to ISO/IEC/IEEE 29119 and ISO/IEC 25000.
The entire test cycle, including module and unit tests, can be flexibly integrated into your process environment. For example in ITIL, SPICE or CMMI reference models, CMMI-DEV, CMMI-ACQ or CMMI-SVC.
Why is good software development important? Example dynamic pricing
Dynamic pricing requires a lot of data and information available in different formats. For example, about comparable competitive products and their prices, about insights into the consumption charisma and consumer behavior of customers, about own product utilization and internal product calculations or about the current costs per product and target group oriented marketing campaigns as well as about real-time information regarding environmental influences.
Successful companies are those that can quickly analyze this data from different data pools and compare it with each other.
However, not all information from the above-mentioned areas always has the same static relevance. Companies that combine intelligent self-learning threshold value functions with the information are effective.
Reliable information, mass data processing, complex algorithms, stochastic procedures and real-time information processing become systematic success factors for your company. Effective differentiation from your competition can only be achieved if this orchestra of systems functions in a consistent and reproducible manner.
Effective and modern software on modern proven platforms lead to lasting success. HighPots is known by its enterprise customers for its efficiency and high scalability in software development and engineering. Precise target achievement, high success rates, measurable results and transparency in software development make our customers successful.
You can commission the complete development process from requirements management to deployment as well as individual modules from it.
Modules of our software development services for you
Requirements Management and Requirements Engineering
The experts from Requirements Management and Requirement Engineering ensure that your project is fully understood. They describe your project in exact words. You identify and define software interfaces and provide exact technical descriptions for the software developers, e.g. in UML. When selecting tools, e.g. Enterprise Architect, we are happy to adapt to your wishes.
Hardware and virtualization for software development and application operation
A suitable server hardware and server virtualization are the foundation for an economical and reliable application operation. But also for a scalable deployment on test and productive environments within the scope of a suitable DevOps.
Our IT hardware experts and virtualization specialists will recommend the optimal server equipment to you.
Hardware for software development
In the hardware area, open stack, grid computing, server clusters, classic servers and cloud computing are examined. The hardware consulting also includes the components. We support you with our experience. We know the compatible components of the different manufacturers. Not only the performance per square meter is considered, but especially the computing power per watt (power consumption of the hardware). The unit of measurement ‘computing power per energy consumption’ is our recommendation.
Virtualization for software development
Our services include server virtualization (e.g. via VMWare) or server application virtualization (e.g. via Docker or Citrix) as well as container orchestration (e.g. via OpenShift or Kubernetes).
he capabilities of the various server virtualization solutions with HyperV or VMware, Citrix farms or application virtualization with Docker are essential. We adapt to your licensing policy and advise on configuration issues.
Software Architecture in Software Development – Micro-Services and Blockchain
The HighPots software engineers and software architects design the optimal framework for your project. This includes the design of the backend and the middleware as well as the selection of programming languages and frameworks suitable for the project.
We also recognize where micro-services would make sense. Should we recognize on the basis of your requirements that one or the other blockchain method could be suitable for your solution, we will also advise you on this (at present, however, there is hardly any sonorous or reasonable blockchain application that could not be mapped with conventional software development methods).
Database models as important components for software development
The definition of the appropriate database model for a sustainable data room is essential. When a classical database for structured data makes sense and when a NoSQL database should be used, we will be happy to explain. Often we see NoSQL databases like MongoDB or Cassandra unnecessarily in use. Partly because developers didn’t want to parse the data or simply because some ‘big data’ should be tried out. In most cases the requirements analysis showed that the consistency of the data was more important than the performance. Often we also see that a document-oriented NoSQL database such as MongoDB is used for graphs instead of more suitable NoSQL databases such as Neo4J.
The right programming language for software development
Many companies code applications in the “wrong” programming language. Usually, human resources are the reason for this. Our Java developers were in another urgent project, so we developed it with Python; we didn’t think the application would be so big and important at first. We hear such statements very often.
The right project management for software development
Agile project management method or waterfall or a phase model? Or maybe a hybrid model? All project management methods and procedures have advantages and disadvantages in software development.
Many factors can be used to select suitable project models. Project scope and complexity, common industry reference models (e.g. CMMI for the automotive industry) or TQM systems or even the different working methods of the project members.
Conclusion: Software development through HighPots
Software development projects are rarely easy. Communication deficits and misunderstandings as well as different expectations can lead to disappointments. We at HighPots have many years of experience in software development. In large and small projects. We have excellent personnel and all technical possibilities. And yet we are not error-free. But our successful project completion rates are still far above average.
We would be very pleased to support you in the realization of your software projects through software development.