"What is the fastest solution for finding the maximum sum of a subarray?"
Can't get much better
First of all, I would have to agree with the commenters that your solution is fine.  Any further gains upon your solution would probably depend on random factors in the Leetcode judging system.  Your main loop does the minimal amount of work necessary to solve the problem.
Reduce code?
That being said, I went ahead and tried a few things to see how random the Leetcode judging system was.  I ended up with this code which is essentially the same as the original code except it doesn't special case the first array entry and is therefore a little smaller:
class Solution {
    public int maxSubArray(int[] nums)
    {
        int size = nums.length;
        int sum = 0;
        int max = Integer.MIN_VALUE;

        for (int i = 0; i &lt; size; i++)
        {
            sum += nums[i];
            if (sum &gt; max)
                max = sum;
            if (sum &lt; 0)
                sum = 0;
        }
        return max;
    }
}

I submitted this code several times and randomly got a submission in the 98.67% percentile (13 ms).  I also had submissions that scored 85% (14 ms), 56% (15 ms), 32% (16 ms), and 18% (17 ms).  Given the fact that the same code varied in time between 13 ms and 17 ms, I would say that random factors have more to do with your score than the actual code.
You can see my 13 ms submission here.  I'm not sure if that link is private to my account or not, but you could always just copy and paste my code and submit many times yourself.