ic_banknote_smile_128ic_business_128ic_checkmark_128ic_client_team_manager_128ic_code_file_128ic_code_files_128ic_corporate_cloud_platforms_128ic_crossplatform_apps_128ic_developer_128ic_development_team_128ic_enterprise_128ic_faster_timeframe_128ic_graph_down_128ic_information_finder_128ic_junior_developer_128ic_managed_team_128ic_message_128ic_mobile_app_startups_128ic_mobile_development_128ic_mobile_development_up_128ic_mobile_devices_128ic_multiplatform_128ic_multiplatform_white_128ic_pricetag_128ic_project_checklist_128ic_project_management_128ic_project_management_team_128ic_research_and_development_team_128ic_scalable_team_128ic_senior_developer_128ic_smaller_codebase_128ic_smaller_price_128ic_startup_128ic_team_manager_128ic_three_times_faster_128K&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxK&C_Icons_32pxArrow_Dropdownic_001_google+_16ic_002_xing_16Group 2ic_003_facebook_16ic_004_linkedIn_16Groupic_005_message_16ic_006_upload_16ic_007_remove_16ic_008_email_16ic_009_attachment_16ic_010_file_16ic_011_name_16ic_012_arrow_left_16ic_013_arrow_right_16ic_014_arrow_down_16ic_015_arrow_up_16ic_016_dropdown_arrow_down_16ic_016_dropdown_arrow_leftic_016_dropdown_arrow_rightic_017_K&C_dropdown_arrow_up_16ic_018_language_16ic_019_Quote_16ic_020_+_16ic_021_=_16ic_022_phone_16ic_023_twitter_16ic_024_position_16ic_025_company_16ic_026_search_16ic_027_mobile_16ic_028_fax_16ic_029_location_16ic_030_enlarge_16ic_031_downscale_16ic_032_contactic_download_normal_16pxic_033_skype_16ic_006_download_16 copyic_Interest_based_64ic_acrivate_card_64ic_api_client_64ic_application_architecture_64ic_application_architecture_ white_64ic_application_development_user_64ic_arrow_down_64ic_automated_backups_64ic_automated_infrastructure_provisioning_64ic_automated_infrastructure_provisioning_white_64ic_automated_storage_64ic_automated_storage_64ic_automation_64ic_avaliability_across_the_world_64ic_avaliability_across_the_world_white_64ic_brackets_64ic_brackets_64ic_build_64ic_build_64ic_business_64ic_business_partnership_64ic_business_partnership_white_64ic_business_64ic_calculator_64ic_calendar_64ic_car_rent_64ic_card_renewal_64ic_chat_64ic_chat_bubbles_64ic_chat_bubbles_64ic_chat_white_64ic_checklist_64ic_checkmark_64ic_checkmark_white_64ic_clock_64ic_clock_white_64ic_cloud_media_64ic_cluster_64ic_cluster_white_64ic_code_base_optimization_64ic_coding_64ic_coding_white_64ic_commenting_widget_64ic_commenting_widget_64ic_containers_64ic_containers_white_64ic_continious_64ic_continious_delivery_64ic_continious_delivery_white_64ic_continious_release_64ic_continious_release_white_64ic_continious_white_64ic_cost_saving_64ic_cost_saving_white_64ic_cpu_load_64ic_credit_card_64ic_crossplatform_app_development_64ic_crossplatform_app_development_white_64ic_custom_crm_64ic_custom_crm_64ic_independence_consulring_64ic_database_calls_64ic_database_calls_white_64ic_dedicated_teams_64ic_dedicated_teams_64ic_desktop_application_user_64ic_desktop_application_user_64ic_desktop_code_64ic_desktop_code_white_64ic_developer_64ic_developer_white_64ic_development_64ic_devops_64ic_documents_64ic_documents_graph_64ic_documents_graph_white_64ic_documents_white_64ic_download_presentation_64ic_education_64ic_email_open_64ic_email_open_white_64ic_environment_healthcheckic_euro_64ic_euro_white_64ic_failure_solved_64ic_globe_outlines_64ic_good_quality_64ic_high_load_websites_64ic_high_load_websites_white_64ic_hotel_booking_64ic_inability_64ic_inability_white_64ic_increase_64ic_increasing_team_64ic_independence_64ic_integration_64ic_it_outsourcing_64ic_it_outsourcing_64ic_knowledge_sharing_64ic_mobile_devices_64ic_laptop_user_64ic_laptop_user_64ic_launch_64ic_launch_white_64ic_learning_64ic_learning_two_white_64ic_lighthouse_64ic_link_64ic_load_balancer_64ic_load_balancer_64ic_load_card_64ic_lock_64ic_lock_white_64ic_low_cost_64ic_low_load_websites_64ic_maintenance_tools_64ic_maintenance_tools_white_64ic_media_player_64ic_messaging_platforms_64ic_microservice_architecture_64ic_microservices_64ic_microservices_64ic_mobile_app_64ic_mobile_content_64ic_mobile_development_64ic_mobile_development_white_64ic_mobile_devices_64ic_mobile_devices_white_64ic_mobile_payments_64ic_mobile_social_media_applications_64ic_mobile_workflows_64ic_money_transfers_64ic_multimedia_sharing_64ic_multimedia_sharing_white_64ic_my_garage_64ic_no_access_64ic_no_access_white_64ic_no_oldschool_64ic_online_marketplaces_64ic_online_trading_64ic_pair_device_64ic_parallels_64ic_parallels_white_64ic_passcode_64ic_performance_64ic_performance_issues_64ic_performance_issues_white_64ic_performance_white_64ic_plane_64ic_plane_white_64ic_plus_64ic_pricetags_64ic_product_64ic_product_search_64ic_product_white_64ic_productivity_tools_64ic_productivity_tools_64ic_project_delivery_64ic_project_delivery_white_64ic_project_management_64ic_project_management_collaboration_64ic_project_management_team_64ic_project_risks_reduced_64ic_quality_mark_64ic_quality_mark_white_64ic_question_64ic_react_native_64ic_response_time_64ic_response_time_white_64ic_rest_api_64ic_retail_64ic_transparency_consulting_64ic_scale_up_64ic_scale_up_white_64ic_self_healing_64ic_self_healing_64 copyic_send_money_64ic_server_64ic_server_white_64ic_shopping_64ic_sleep_mode_64ic_small_is_beautiful_64ic_smaller_price_64ic_social_benefits_64ic_social_connections_64ic_socket_64ic_spare_parts_for_cars_64ic_spare_parts_for_cars_white_64ic_speedometer_64ic_performance_consulting_64ic_speedometer_white_64ic_startup_64ic_target_64ic_team_64ic_testing_64ic_testing_checklist_64ic_testing_checklist_64ic_testing_white_64ic_three_times_faster_64ic_touch_64ic_touch_id_64ic_touch_white_64ic_transparency_64ic_ui_design_desktop_64ic_ui_design_mobile_64ic_ui_design_mobile_white_64ic_umbrella_64ic_umbrella_white_64ic_up_and_down_scaling_64ic_up_and_down_scaling_64ic_users_64ic_users_white_64ic_ux_design_64ic_ux_design_desktop_64ic_ux_design_white_64ic_vehicle_64ic_web_based_search_64ic_web_based_search_white_64ic_web_browser_code_64ic_web_browser_developer_mode_64ic_web_browser_user_64ic_web_development_64ic_web_development_white_64ic_web_portals_64ic_web_portals_64ic_web_user_64ic_web_user_white64ic_workflow_64ic_workflow_steps_64ic_workflow_steps_white_64ic_workflow_white_64ic_working_environment_64

Cost efficient technologies

Nowadays the range of tools for web and mobile development is so wide that it doesn’t really matter which set you pick as long as you get the job done. When judging from the business point of view, the technology doesn't matter, too. However, it can be really hard sometimes to decide in favor of a specific framework or a programming language. Hope our brief overview will help you reassure in a chosen cost-effective way around the jungles of languages, frameworks and platforms.  

Language specifics

A variety of programming languages turns the customer’s choice of the best solution into a question of personal convenience rather than a single correct decision. In JVM World: 1,2,3,4 and many more... Usually every developer has an individual preference when it comes to programming languages. Still, each choice has its upsides and downsides. Groovy and Kotlin currently experience some issues with the lack of tools for static code analysis, including security audits. Koltin is rather fresh, lacks large number of mature frameworks and the community are somewhat small. Java and Scala are way more prepared than its younger siblings. Java provides teams with access to vast amount of documentation and open source tools, what easily makes it the most applied framework that cuts development time and cost. The recruiting issues are crucial as well. Developers are easy to find when it comes to Java, not so easy for Scala and Groovy, and even harder for Kotlin.

Frameworks

The selection of a framework, on the other side, is a much more complicated process. Each separate case needs a well-selected framework which is endowed with just the right abilities for the task. The balance is a key – it can't be too complex or too simple. For example, one won't be building a simple CMS using microservices or designing a distributed cloud system using the monolithic approach.

Front-end solutions

There are many Single Page Application frameworks which can also be used for a project. The most popular are React with Flux implementation, Angular, Vue and Ember. React is the hardest one to set up when bootstrapping a project from scratch due to a huge amount of library picking that needs to be done. As an alternative, developers may go for a bootstrapped version of the framework, which will probably have its own obstacles. On the plus side, it's usually easy to find the developers willing to work with this stack. Angular and Ember are quite simple to set up in order to start using right away. Although, with Ember, it will be harder to find the right people for a job.

Platforms and operations

The struggle between cloud-based SaaS and PaaS vs. on-premise approaches is still relevant. Heroku is considerably easy to get started with, it is ideal for the small project. But you will also hit some scaling limits after growth and will be spending lots of money on transition. Authentication services like Stormpath, Auth0, and Okta offer solutions that are easy and convenient, but once you reach a certain size, prices will get higher very fast. Sometimes it makes more sense to build your own solution – AWS Cognito provides the open set of tools for creating an auth service.

This variety of tools will allow you to build an affordable project in a quick timeframe. Krusche & Company experts are eager to help you make the cost-effective choice.

Cost efficient tech

These days in web programming it doesn’t really matter which set of tools to pick up to get job done. While all languages can be used, framework selection is quite a complex process.

Business never really cares about technology, every product has to work and needs to be developed within certain timeframe to comply with budget.

Frameworks are picked for specific use cases. No one will build simple CMS using microservices or try to design complex distributed cloud system using monolithic approach.

Language specifics.

JVM world. Java, Scala, Groovy, Koltin. Developers might have have their preference on any of these, business doesn’t. Groovy and Koltin currently have issues with amount of tools for static code analysis, including security audits. Koltin is very new and frameworks count as well as community is too small atm. Java and Scala are way more mature. Java being most used framework these days give development teams access to huge amount of documentation and OSS tools. Which leads to time/cost reduction. Resources - java easy to find, scala/groovy hard, koltin very hard

FE. There are number of SPA frameworks these days, most used ones are react + flux implementation, angular, ember. React is hardest to set up properly, to bootstrap project from nothing lots of library picking needs to be done, as an option devs might go for some bootstrapped version of framework, which might have it’s own problem. On plus side it will always be easy to find devs willing to work with this stack.

Angular on the other hand is very easy to set up and start using right away. But you will get a huge toolkit. Ember is similar, harder to find people though.

Operations. Heroku quite easy to get started with, it is fine for small project. Once it grows you will hit some scaling limits this platform provides and also spend lots of money on transition. Starting with something more sophisticated from start is usually good idea. Having scaling and smart orchestration in mind

Cloud SaaS services vs own build. Number of companies offer various solutions today. For instance auth services (Stormpath, Auth0, Okta). Again it’s quite easy to start working with them, but once you hit certain size prices will grow quite fast. Looking into developing your own toolkit might make more sense with tools like AWS Cognito, which provides bare set of tools to build your own auth service.

K&C will help you make correct choice .

Agile team setup

In outstaffing it’s not always good idea to compose team using cheapest possible resources. 7-9 people usually ideal team size for large scale projects. Having all of these people as seniors is not quite cost effective.

Best team would consist:

2 senior devs which drive forward project architecture and tech

3-4 mid level developers which do main bulk of work

1-2 juniors which need to be maintained by rest of the team but can be assigned to simple and boring tasks

Bad teams

1 Senior dev acting as SM, 6-7 Junior devs. It would be nightmare to track all these devs .

7 seniors, too expensive .

Mixture of mid and juniors, moving project forward technologically would be really hard. Team might constantly make bad choices .


SHARE WITH FRIENDS
You might find this interesting
Case Study
Bosch Classic Cars - Digital Engagement Platform for 19K Vintage Car Owners
Case Study
Liferay Portal Performance Tuning Services for a Major Online Gaming Software Supplier
Success Story
Drivelog.de — Web Marketplace for Car Owners and Service Providers
eBook
How to Secure Web Product Development — FREE eBook
Case Study
Portal Performance Tuning For Major German Travel Agency
case study
Micro-service Architecture for New AngularJS Application - Case Study
Success Story
Fast and Lightweight Mobile Application based on PhoneGap/ Cordova
ebook
Top Tools for Cost-Effective Web Development — eBook
Blog Post
Debunking imaginary shortcomings of cross-platform frameworks
E-book
Determining Approaches to Mobile App Development
Blog post
K&C insights: how to make your workflow work for you
Success Story
How to apply React Native while developing heavy cross-platform mobile apps
Success Story
Reformation of Deployment Cycle for Bosch Classic Cars Portal
Article
Test Blog For Production
Blog post
Test article #4
Blog Post
A Guidance for Keeping Your Web Development Project Within the Budget: Three Key Pillars
Blog Post
Technologies that Foster Digital Transformation
Blog Post
Reasons to believe in Ionic hybrid app
Blog post
Cloud Deployment: Overview of Options
blog post
How We Manage Our Infrastructure with Chef
Blog Post
Dedicated Teams for Web Development: Choice Criteria to be Checked
blog post
4 Time-Saving Ways to Test Your Cross Platform Mobile App
blog post
Plan to Succeed: 4 Tips for Building Scalable Software
Blog Post
Scaling software solutions - how it works
Blog Post
Agile and DevOps are Key Drivers of Digital Transformation
Blogpost
How to Motivate Your Dedicated Team to Work with Legacy Projects
blog post
How to Build a Rancher & Docker Based Cloud
Blogpost
SEO Tips & Tricks for Single Page Web Applications
Article
How to Make Your Web Solution Rock: 7 Areas to Check
blog post
When Microservices Help Make Future-Ready Products
blog post
DevOps with Puppet: Tips on Setting it up for Configuring Servers
blog post
Centralized Logging with Logstash, Elasticsearch & Kibana
Blogpost
How to start services on Linux
blog post
Docker: Virtualize Your Development Environment Right
Blog Post
Angular 2.0 vs Angular 1.4. What fits you best?
blog post
How We Use Ansіble for Configuration of Our Environments
Blog Post
A secret formula of an agile dream team
Blog post
GoLang: Features, Pros and Cons
Blog post
Use case: how to build and run Docker containers with NVIDIA GPUs
blog post
How the QA Team Tests Your Project
Blog Post
Angular 4 vs React – what to choose in 2017
Blog post
Microservices… when do we need them?
Stay tuned!
We'll gladly share fresh blog updates and our best practices to your email.
We protect your data and will notify you on important updates only.