Starting new Web project

We had a project kickoff meeting this morning to discuss tools to be used. This is a consumer-facing single-page Web  application (SPA) that will also have a back-office part to be used by the business owners. During this meeting our engineers suggested a list of software. This list will grow, but I thought you might be interested to see it as it is now.

1. Web designer uses Balsamiq Mockups for prototyping and Twitter’s Bootstrap framework for styled components. We’ll use responsive design principles, so the app will look good on the mobile devices too.

2. Build tool: Gradle

3. Continuous Integration: Team City (JetBrains). We’ll configure automatic builds, unit tests, code coverage findbug.

4. Version control system: Git. The hosting site: Bitbucket. We’ll also use Bitbucket’s Wiki for doc, and Issue tracking feature for bugs.

5. Java Spring 4 framework. The version 4 is still a release candidate, but our engineers are convinced that it’s safe. IMO it’s a little too risky given the fact that the application should go live in 3 months, but we can always fallback to the earlier release. In particular, we’ll be using the following Spring modules: Core, MVC, Data (maybe), Boot, and Security.

6. Consumer-facing front end will be developed in HTML5 using AngularJS and Bootstrap frameworks.

7. The Back-office UI: HTML5 ExtJS framework.

8. Data persistence: MySQL 5.6

9. ORM: either none or MyBatis

10. Code Generators: Apache CXF for WSDL schema, our home grown Clear Data Builder for back office Ext JS-Java CRUD generation

11. Full text search: Apache Solr

12. Web Servers: Nginx server plus servlet container Apache Tomcat 7

13. Deployment – one self-executable Jar with embedded servlet container (Apache Tomcat)

14. Exploring monitoring of servers with Newrelic and Takipi.

15. IDE: One developer uses IntelliJ Idea, another – Eclipse IDE

The client and the project manager (yours truly) are based in New York, the back-end developer is from Toronto, Canada, Web designer and Web Developer/Team lead work from Russia, the sys-admin works from Ukraine. For deployments we’ll be using our data centers – one in Florida and another one in New York.

This is it for now.

Categories Web

5 thoughts on “Starting new Web project

    1. Sysadmin works for our company fulltime, but on this project his involvement is very limited on as needed basis. He created a couple of VMs, created Web domains and installed MySQL, and gave developers SSH access to do the rest.

      If need be, developers can contact him via Skype or email.

  1. Hi Yakov,
    I am one of a regular reader of your blogs and I don’t miss to learn from your experiences which you share with us. Thanks for your efforts and time which you manage to get somehow to write all these.
    However, now-a-days I am working on a website and looking for some useful tips or any book which can help me to increase the Google-ranking of my website, so that most of the time it should apear at top level of search results. Please suggest.
    Thanks in advance !

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s