XP Days UA Pecha kucha
-
Upload
eugen-martynov -
Category
Technology
-
view
328 -
download
0
description
Transcript of XP Days UA Pecha kucha
Mobile developer is Software developer
maven, ant, gradle, bb-ant-tools, proguard, antennajunit, testng, fest assert, mockito, jmockitrobolectric, microemulator, robotium, j2meunit, sikuli, monkeyrunnerroboguice, androidannotations, daggermicrolog, jarrut, lwuit, advanced bb ui, guava, otto, actionbarsherlock, viepageindicator, disklrucachejenkins, teamcity, bamboo, sonar, mooseintellij idea, eclipse, eclipse code formatter plugin
Company
eBuddy
• 2003, Chat and XMS• AIM, Facebook, GoogleTalk, ICQ,
MySpace, MSN and Yahoo• iOS, Android, BB, Symbian, J2ME, WP7,
Web• 30 million monthly unique users• 26 different nationalities
Build script
• Ant, antenna, bb-ant-tools• Maven• Proguard• Release autochecks• Reviewing gradle
Translations
• Wiki, excel• XSLT, commit to vsc
Continuous integration
• TeamCity• 9 agents – Linux, Windows,
Mac• Trunk, Beta and Release• Pin to deploy in TC
Dependencies
• Artifactory, ivy• SDKs• Open Source
Analytics
• Flurry, Google analytics• DataWareHouse
UX and customer support
Teams
• 4-5 developers, 1quality assurance
• Platform and feature teams• Scrum
Project setup
• General conventions, definition of done
• Eclipse, IDEA• Eclipse code formatter
plugin
Source Control
• Trunk, release and spike branches
• Commit frequently, commit smart
• Behavior commit comments
Code
• Clean code• Preprocessor and
optimizations • Comments only for firmware
bugs workarounds• BE developer• Sonar for project health
Tests philosophy
Tests practice
• Quick feedback• Robolectric, microemulator• Emulator/simulator tests
Dependency injection
• Separate creation and usage• Roboguice, Dagger
Other tests
• Automate regression• Sikuli, Robotium• Monkey runner
Knowledge sharing
• Pair programming• Code review• Design sessions• Wiki
Spikes
• Clear outcome• Timeboxed• Presentable
Personal projects
• 2 personal projects• One sprint duration• Presented on company
meeting
Conclusion
• @jack_martynov• [email protected]