The blessing mobile cloud has explored the wisdom of application development and deployment with techniques such as code offloading. While code offloading has been widely considered for reducing energy consumption and increasing responsiveness of mobile devices, the technique still faces many challenges pertaining to practical usage. Advances in mobile hardware and operating systems have made mobile a first-class development platform. However, developers are still constrained by the inherent resource limitations of mobile devices. And they are facing a hesitation with which way is the best to develop an application to reduce the energy consumption of a smartphone. Deciding to offload requires a careful consideration of the costs and benefits of a range of possible program partitions. This cost-benefit analysis depends on external factors, such as network conditions and the resources availability, as well as internal app properties, such as component dependencies, data representations, and code complexity. Thus, benefiting from offload requires some assistance from developers. In this article, I adopt a systemic approach for analysing the components of a generic code offloading architecture. Based on theoretical analysis, I identify the parameters to describe the key limitations for code offloading in practice and then propose solutions to mitigate these limitations. In this paper I characterize the architecture of Google App Engine to reach a solution that reduces the amount of developer effort required to improve the performance as well as reduce the power consumption of smartphone.