Do you want to innovate, stand out amongst your peers, see your work being used by thousands of small businesses all around you - and go home feeling energized every day? All of this while working on some of the latest technologies and helping to build massively scalable systems at one of the fastest growing SaaS companies around? Come work at a place where agility, developer productivity and continuous improvement are valued, and architectural and product roadmaps are downright kick-ass!
Here at Constant Contact, we believe that if you offer challenging projects to smart people, and give them the freedom to invent, you can create powerful software while being part of a fun, collaborative environment. For this particular position, we are looking for someone to join the team that provides core services and technology infrastructure that support our customer-facing applications. These include:
- Sending content out to email, social media and more! (These services allow us to send at peak up to 500+k emails per minute, and more than 200 million emails in a single day!)
- Activity tracking – not just for email opens and clicks, but social media actions and so much more. And at massive scale leveraging Cassandra NoSQL data store.
- Key technologies such as JBoss, Memcached, messaging and ESB
- SSO – single sign-on capabilities not just within our product, but across our partner community and even OpenID support for some key (big) strategic partners
- Account and User – to manage aspects that are application-independent
In this role you’ll:
- Work on one or more projects and functional areas that the team is involved with. Flexibility is the key – you might take the lead on one project, then help out in a different functional area as needed. We’re in a dynamic environment – we get involved in new projects as they are born, and help drive technology changes as we go!
- Work on REST-based Java core services to support our applications
- Work on advancing our technologies that support our growth and our distributed architecture model
- Work closely with our Operations group to ensure everything we do is operationally manageable, horizontally scalable, and highly available
- Work on an agile team (most accurately we’re doing Scrumban – not quite Scrum, not quite Kanban – but it works for us). It’s about incremental delivery of value!
- Be highly collaborative – with other engineers, architects, QE, product management – everyone!
- Have a mindset of software craftsmanship – quality and the right design decisions matter
- B.S./M.S. in Computer Science or equivalent discipline
- 8+ years developing web-based applications
- Experience building highly scalable websites and web-based applications, with strong emphasis on operational elements such as redundancy and fault-tolerance, logging and monitoring, troubleshooting, high availability
- In depth knowledge of Java and J2EE and web-based applications
- Experience with one or more major Java application servers (JBoss, WebSphere, GlassFish, WebLogic, etc). Familiarity with multiple application servers highly desired.
- Working knowledge of one or more current Java application frameworks (EJB 2, EJB 3, Spring, Guice, etc.)
- Experience exploring and adopting new technologies, strategies and technical solutions
- Ability to articulate engineering design strategies related to scalability, performance, security, usability and development platforms
- Exceptionally strong written and verbal communication skills, interpersonal skills and organizational skills
- Strong sense of self-motivation and proactively contributing to ensure team success
- Direct experience with email technologies and mail systems
- Familiarity with Web Services
- Experience with several production scale databases (DB2, PostgreSQL, Oracle, MySQL).
- Experience with high-volume consumer or small-business website
- Experience with Agile Software Development methodologies