New technologies have the power to make the possible better and to achieve the impossible. For our success as a consulting and development service provider, mastery of IT and software technologies is therefore an important prerequisite. At the same time, technology also helps us to continuously improve our own work processes. For us, technology is the key to the efficient and effective realization of innovative solutions.
The M&M Standard Toolbox
As technology is so important, we continuously invest in the expansion and optimization of our technology portfolio based on a standard toolbox. This offers our customers the following advantages:
- By focusing on preferred technologies and tools, we are able to train our employees to master the most important components of the standard toolbox off the top of their heads, enabling them to efficiently complete the tasks at hand.
- We align our development processes with the contents of this standard toolbox and then increase efficiency by automating workflows.
- Standardization also makes it easier to reuse subcomponents across project boundaries, thus reducing development costs.
- Employees can switch between projects as needed and thus buffer additional short-term demand.
- In principle, we prefer basic technologies with the broadest possible range of applications. We keep our hands off short-lived exotics. This reduces the number of technologies to be mastered and ensures the sustainable availability of the technology.
- For typical use cases, we define a suitable and proven technology stack. This reduces the technical risk in our customers' projects.
The M&M standard toolbox includes:
- Programming languages: C#, Java, Typescript, C++, Python, PowerShell, IEC61131-3 (Codesys)
- Frameworks: .Net Standard, .Net Core, Node.JS, OpenJDK
- OS platforms: Microsoft Azure, Windows, (Embedded) Linux, Web, iOS, Android,
- Front-end / UI: Angular, HTML5, WPF, Unity (3D), Ionic, Electron.
- Backend services: Azure Services (numerous), ASP.NET, Node.JS
- Micro-Services: Kubernetes, Portainer, Docker, Azure Service Fabric, Dapr, REST APIs.
- Databases: SQL Server, Azure SQL Services, Azure Data Explorer, Postgre SQL, Cosmos DB
- Monitoring: AppInsights
- Reporting / Trending: PowerBI, Grafana
- Data Analytics: Jupyter Notebooks, Python, Various Azure Services
- Agile Development: Azure DevOps, Git, Jira, Echometer
- IDEs: Visual Studio, Visual Studio Code, Eclipse, IntelliJ, CLion
- Code quality and developer productivity: NDepend, SonarQube, Microsoft Analyzer, ESLint/TSLint, Resharper, VisualAssist, NCrunch
- Virtualization: Hyper-V, VMware
- UI Design: Axure, PowerPoint, Adobe Creative Suite
- UI Test Automation: Ranorex
- Modeling: Enterprise Architect
- Collaboration: Teams, SharePoint, Conceptboard, TeamViewer
- Installation: InstallShield, Windows Installer
- App Stores: Apple AppStore, Google Play Store, Microsoft Marketplace
- Industrial communication: Fieldbuses, OPC UA, MQTT
- Device configuration: EDD, FDT, FDI
- Industry 4.0 /IoT: Digital Twins, AAS, Open Industry 4.0 Alliance, MTP
Of course, our overall technology portfolio is much broader than that, but the components listed above represent the solid technological foundation of our software development activities.
Being Up-to-Date is Important
Few things are as fast as technological change. In order to keep up, the contents of this toolbox are constantly checked in order to ensure that they still meet current requirements.
This task is performed by our chief architect together with our project architects and technology consultants. They observe current technology trends and identify what is relevant for us and ready for application in real projects at an early stage. But of course, our customers and their projects also constantly provide new ideas and requirements, which we take into account when equipping this toolbox.
Microsoft Azure vs. Cloud-Native
An increasing number of our customer projects are in the Cloud and IoT environment. As a Microsoft partner with multiple gold competencies and as a Microsoft Cloud Service Provider, we have chosen Microsoft Azure as our strategic cloud platform. Here we have a broad and deep expert knowledge of the use of the diverse services of this platform. Both in the Cloud/Edge and on devices.
At the same time, however, we are increasingly encountering the request for a certain degree of independence from the cloud provider used. We support this wish for sovereignty with a cloud-native approach based on Kubernetes and containerized micro-services. This approach works very well within Microsoft Azure but also the clouds of other providers and also on the Edge. This allows us to offer powerful solutions to our customers everywhere.
Open Source? Yes, but...
Even for individual developments, the use of open-source software is a matter of course today and offers the potential for significant cost savings. We want to tap this potential for our customers.
But the underlying licensing models and property rights must be carefully considered, and their impact on the intended business model of the solution must also be taken into consideration. Many open-source components that appear promising at first glance do not meet these requirements and can therefore not be used.
Therefore, we carry out a careful technical, but also legal evaluation of the open-source components used before applying them, thus protecting our customers from unpleasant surprises.
M&M Software is Your Partner for the Use of Modern Software Technologies
Our effective applications are based on our profound mastery of IT and software technologies. Take advantage of our knowledge and expertise for the realization of your successful software solution.