Android
(Rockstar)
1-2 Years Experience,
(Currently in use)
Android Java is made up of parts of java from several places not just javaSE and parts of javaME but also some small parts of JavaEE as well. Thus, while the main thrust is JavaSE including threading, annotations, unit testing, etc there is also or example use of simple messaging inter-application wise and application to application borrowed from JavaEE.
Android like other frameworks such as Mozilla applies a XUI strategy of XML-izing the User Interface. This means you can state the UI components in XML form and also program wise state them as code instead depending upon the need.
Also the android skills include how to use Google APIs such as the Google MAP API. Experienced in extending several APIs for greater functionalities such as Webkit, UI widgets, the unit testing mock object framework, etc.
APIs include:
Android Core
SurfaceManager
OpenGL
Webkit
MediaFramework
SQLite
Application Components including:
Activities
Services
Broadcast Receivers
Content Providers
Intents
A form of RPCs implemented using Android IDL
Mobile Web Development
(Expert)
3-4 Years Experience,
(Currently in use)
Mobile web development is a very fragmented beast and is one of the reasons why skilled developers contribute to the WURFL project, such as myself, so that we have an accurate database of web capabilities of every device. The tool kit frameworks often used are:
Google Web Toolkit(Webkit browsers and those mobile browsers that come close to full HTML5 support)
PhoneGap, QuickConnect, and Rhomible provide a different approach to mobile web RIA with the Webkit's own webview in the native language of the mobile platform becoming the container whereas the application is coded in html, CSS, and javascript.
Mobile Widgets are based on W3C run-times for mobile platforms such as javaME-Symbian, Windows Moible and some android versions namely those that are OPhone based. Mobile widgets usually consume web services through rss, atom, soap, etc. The major difference between Mobile Widgets and WebKit Webview application approach is that Mobile Widgets cannot access all native device functions. Its benefits like the Webkit WebView approach is that the most of the application code is the same for all mobile platforms that can deploy W3C Mobile Web Widgets with the widget browser based runtime providing a subset of device functions that can be accessed using javascript.
The main feature of all these approaches is to get the follwong levles of compatibility the same one every mobile device:
CSS level 1, Level 2
HTML5
Javascript and AJAX.
Server Side
(Expert)
5-6 Years Experience,
(Currently in use)
Developing Server Side Applications is a balance between access control, usability, and speed of information flow across a firm's infrastructure.over the years the differences between enterprise applications and Web applications has become smaller and less differentiated. it is no longer enough to have just exactly one tool. My Server Side Development Tools include the following:
LAMP
Linux(Ubuntu, Centos, gNewSense)
Apache HTTPD, LightHTTPD
MySQL/PostgressSQL/Apache Derby
Php/Python/Perl/Ruby
MVC Frameworks(CakePHP, SymfonyPHP, Django-Python, ruby on Rails)
JavaEnterprise(JavaEE)
SQL-MySQL, PostgressSQL, Apache Derby, SQLIte
Hibernate ORM
Spring IoC
Servers-Jboss, Apache Geronimo, Jetty, Tomcat, Glassfish
MVC Frameworks-Groovy/Grails, Seam, wicket(AJX etc)
Generally, its LAMP and or Groovy/Grails/Seam that is used for rapid application development(RAD) rather than the traditional java enterprise development and server stacks.