This past week i’ve been working on the redesign and performance updates to our company’s Support Manager section of our application. The update not only introduced new workflow, design and features, but it also performs a lot better than the previous one.
Some of the new features built in:
Categories, Statuses, Priorities, Assignees, Teams
Quick Inline Editing
Multi Moderation (Apply multiple moderation actions in a single click)
Quick Open/Close Ticket
Real time view of who currently viewing a ticket from the tickets pipeline
Full Search capabilities
Mentions (using @name can tag someone to receive a notification and an email)
Quick Close, Open, Close & Next
Real Time Currently viewing ticket (ajax updates)
Last Users Viewed
Pre-Defined templates to select for a response to the client
Below is an example of how it used to look like vs. how it is now.
Took the test on Friday February 14th 2014 and passed it. I now hold all certification (again). Not that it means anything but i like taking those kind of tests to keep myself up-to date and see if i can pass them. This one was probably the hardest one i took between the others, Mainly due to the fact that the 5.5 new study guide has lots of errors in it. But i’m pleased overall of taking it an passing. Since i took 3 before it cost me $125 instead of the regular $195.
I’ve released the current state of the Yii eCommerce platform. The only thing that was worked on so far was the Admin section so there is no frontend to the application. for more information please visit Github:
I’ve been working full time for a company in the real estate industry for nearly two years now. As the senior developer i’d had the opportunity to use and experience with various technologies, services and tools that i haven’t used before. I’ve developed the entire company software, tools they use and the iPhone App that is available for free on the Apple App Store.
When i started working back in July 2012 they hired me after they acquired a software they wanted to use that was poorly coded, used several different frameworks along with custom scripts and native PHP which made everything a big mess, not to mention the UI and design was horrible. since from a financial standpoint, timeframes and deadlines i couldn’t start from scratch so we had to use the software as is, just fix and rebuild as the staff was working on it while trying to write good clean separated code as we moved forward.
I’ll list some of the pages that were redesigned and rebuilt in order to make a better user experience and a better application workflow overall.
1 RDS database 1 read replication (> 10 Million Records and > 11 GB)
3 S3 Buckets (over 1TB of files)
~50,000 Emails sent monthly
35 Cron jobs
8,666 Github Commits (Started May 29 2012)
20 Months, 3,200 hours
The original order page was built in 3-4 different pages, meaning the user was to fill the first page, click continue and the order id was created and the basic info was set, then they’ll move to the second page for some more info, third page is the payment info and forth is the order completion message.
The new redesign is a single page, that uses bootstrap, wizard and ajax save and validation on a single page. Each step the data is validated and saved if the page refreshes the user goes back where he last left of.
Order Management & view
The staff needed to manage and make sure each order is being updated and completed in time. each update involved a log entry, in some cases a phone call and an email. The design for the old application management screen was plain, not user friendly and usually things were not working as they should’ve.
The new look on the other hand is designed for readability, user experience and easier handling for the staff for each order (New style includes a lot more features that will be discussed shortly).
Currently Viewing & Last Viewed
With more than one staff member usually taking care of the same order it often occurs that one staff member will be working on the same file at the same time, causing multiple emails and phone calls to the same client. We’ve added the last viewed section on the middle left and currently viewing underneath it to show who last viewed this file and when and who is currently viewing it. If someone enters the file a little Notification at the top right of the screen will appear notifying the user who just entered this order and is viewing it. This also applies to clients entering the order on their own dashboard.
Auto Assignment Dashboard
There was a need to create a system that will assign each staff member the order that he is supposed to work on right now and the next one in line. each order placed in line is based on certain parameters, if the order is currently viewed and worked on by another staff member it will not show up in the auto assignment (for example), each staff can see how many he has worked on today, how many are left, other staff members working on what orders and some stats on times that it took to work on a certain order and total time worked on orders today. At the bottom of the order screen they can set when this file should be revisited.
The activity log is all log messages added to each order, staff members can add log entries, emails sent and received regarding this files are also logged and can be viewed by clicking the linkable title, if a client send a support ticket it will also log that. if someone creates an activity log while a staff member is viewing the order page the activity log will refresh and a little notification at the top page will show notifying the user of a new X activity logs. they can also filter them based on certain pre-made filters (show all, show only client, show only emails, show only yours etc…)
Active Users & Active iPhone App Users
We need to know who was using the website at any given time, staff members and clients. we also wanted to log all the activity and usage on the mobile application, so we created the active users page to do just that.
Calendar & Admin Dashboard Notifications
Each staff member can create their own individual private events in the calendar, they can also create public events and select who will see that even in their calendar. on the day of the event they receive a notification and the calendar tab is highlighted red.
Recent addition was the social alert navigation bar, which basically shows any new alerts added for this staff member. when someone assigns a support ticket, creates a log entry with the staff member name linked it will create an alert to let the staff member know.
In order to provide the best results the assignment page was rebuilt and designed to make the assignment process easier. each order will show the closest X appraisers to the property with useful information for the engager to determine who to assign this to by calling or sending emails/invites to the appraisers.
We’ve built an API so third party companies can integrate with our software and service. we also use the same API for the iPhone application we’ve built.
Those changes and hundreds others make the daily task of managing and running the company an easier task. Some of the features included can be seen by just looking at the Admin Dashboard.
Zend announced the release of the PHP 5.5 Certification exam. This brings the PHP 5.3 exam to an end of life by December 31st. I am planning on taking the exam in the next couple of months. I’ll spend these couple of months reading and studying all the new features and changes since 5.3 . Here is the list of topics listed in the Zend Certification Website:
Data Format & Types
Language Constructs and Functions
Performance/bytecode caching *
Anonymous Functions, closures *
Object Oriented Programming
GET and POST data
HTTP Status Codes *
File System Functions
Late Static Binding
Magic (_*) Methods
Instance Methods & Properties
Cross-Site Request Forgeries
Remote Code Injection
Encryption, Hashing algorithms
Password hashing API *
Strings & Patterns
Databases & SQL
SPL, Objects as arrays *
As before i’ll probably publish posts in my blog as i walk through those topics myself. It helps me learn the subjects faster.
I’ve started this project to get familiar with Backbone.js and so far it’s working. I’ve recently fixed the bug where the Issues button was not working after creating an issue and added a new feature: Issue Statuses. The installation process is very simple you just need to fork the project import the schema.sql file and update the db settings under protected/config/main.php.
A screenshot is attached to give you an idea on how this project looks. Next features planned: