Legacy PHP/MySQL Developer Needed – Modernize Existing Business Application (No Rewrite)
Worldwide
The customer has clarified the scope: we want to modernize the existing transport management and dispatch application while retaining its current technology stack, structure and functionality. The application is used by a haulage company for: Planning and dispatching trucks. Managing drivers. Managing trucks and vehicle records. Creating invoices. Managing customer records. Managing destinations and delivery locations. These existing functions and their established workflows must remain operational after the modernization. We will continue using PHP, Smarty, MySQL and Apache. The existing application should remain the basis of the project. No new features are required in this phase. The current environment, according to our initial checks, uses: openSUSE 11.1 Apache 2.2 PHP 5.2.9 MySQL 5.0.67 Smarty 2.6.5-dev The application source code is located at /data/www/dispo/web. Before commissioning the modernization, we would like you to inspect the entire existing system and provide an initial technical assessment. We are happy to pay for this assessment and consulting service. Please let us know the proposed scope and cost of the assessment before starting. During this assessment, please review the server environment, database, application code, Smarty templates, dependencies and any existing integrations or scheduled jobs. Please also familiarize yourself with the application’s existing business workflows. We would like your independent diagnosis and recommendations, including: The current condition of the system and codebase. Compatibility issues, security weaknesses and other technical risks. The work required to upgrade the existing application. Your proposed approach, target versions and implementation sequence. Any improvements you consider worthwhile, distinguishing necessary work from optional improvements. Based on your findings, please provide a quotation for the modernization, broken down into meaningful phases, with an estimated timeline, assumptions and any areas of uncertainty. If a fixed price is not possible for certain parts, please explain this and propose an estimated effort and billing approach. The following is our intended implementation plan. Please review it and suggest adjustments based on your assessment. Implementation should begin once we have agreed on the scope and quotation. Set up the new Linux environment Install a separate Linux server or VM with a current, supported Linux distribution and current, mutually compatible, supported versions of Apache, PHP and all required components. Document the selected versions and configuration. The existing production system must remain operational during this work. Set up MySQL and migrate a copy of the database Install a current, supported MySQL version and migrate a copy of the existing database, including any necessary intermediate migration steps. Verify data integrity, character encodings, collations, SQL modes and query compatibility. Preserve all existing business data and relationships. Adapt the existing application Upgrade Smarty and adapt the existing PHP code and templates to the selected PHP and Smarty versions. Update or replace incompatible dependencies where necessary. Preserve the existing interface, workflows and business functionality. Review, improve and document the code Address identified bugs, security weaknesses and obsolete constructs. Make targeted improvements to readability and maintainability within the existing application. Changes affecting business behaviour should be explained and agreed before implementation. Add meaningful comments explaining business rules, complex logic and non-obvious dependencies. Avoid comments that merely repeat what the code already says. Test the existing functionality Compare the upgraded application with the current system using representative data and workflows. Verify truck dispatching, driver and vehicle management, customer and destination management, and invoice creation. Check calculations, database operations, reports, exports and integrations where applicable. Investigate errors and warnings before acceptance. Prepare the production migration and handover Provide the updated source code, installation instructions, configuration documentation and a summary of changes and remaining issues. Prepare a final data migration, backup and rollback plan. Switch to the new environment only after successful testing and customer acceptance. The expected result is the existing dispatch application running reliably on a current, supported software stack, with reviewed, maintainable and appropriately commented code. Functional extensions will be considered separately after this modernization phase.
- Less than 30 hrs/weekHourly
- 1-3 monthsDuration
- ExpertExperience Level
- Remote Job
- Complex projectProject Type
Skills and Expertise
Activity on this job
- Proposals:50+
- Last viewed by client:2 weeks ago
- Interviewing:4
- Invites sent:4
- Unanswered invites:0
About the client
- Germany11:34 AM
Explore similar jobs on Upwork
How it works
Create your free profileHighlight your skills and experience, show your portfolio, and set your ideal pay rate.
Work the way you wantApply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
Get paid securelyFrom contract to payment, we help you work safely and get paid securely.
About Upwork
- 4.9/5(Average rating of clients by professionals)
- G2 2021#1 freelance platform
- 49,000+Signed contract every week
- $2.3BFreelancers earned on Upwork in 2020
Find the best freelance jobs
Growing your career is as easy as creating a free profile and finding work like this that fits your skills.
Trusted by