Software Engineer I (Server)
Electronic Arts are looking for talented and passionate Java software engineers from entry-level developers through to team leads. This is an amazing opportunity to work in a fast-paced, innovative environment, where every day presents a new technical challenge.
Could you spot a subtle concurrency problem in a production environment handling 10 million-plus daily users?
Could you identify, reproduce, fix and release a critical bug fix as quickly and safely as possible?
Could you design a performing, functional solution to a feature request, harnessing the right mix of existing and emergent technologies?
If So, WE NEED YOU!
We are looking For
- Expert with any of the programming languages (C++, Ruby, Python, PHP, Erlang, Scala, Java)
- Strong understanding of multi-threaded/concurrent programming.
- Understanding of service-oriented architecture
- Experience developing low-latency, highly scalable, highly available distributed server systems.
- Strong understanding of RDBMSes and SQL, particularly MySQL
- Knowledge of version control and build systems such as Subversion, Ant, Maven, and Git
- Understanding of Unix-like systems
- Experience of test-driven development and continuous integration
- Experience writing maintainable, reusable clean code
- Passion for improving legacy code with careful refactoring, supported by tests
- Great communication and teamwork skills
- Boundless enthusiasm for all things tech
- Knowledge of Amazon Web Services (EC2, EBS, S3, Cloudfront, SQS, SimpleDB)
- Knowledge of non-RDBMS data stores such as BerkeleyDB, S3 & SimpleDB, Bigtable/Hypertable,
- Dynamo/Voldemort, etc.
- Understanding of socket programming and networking protocols
- Experience with messaging (e.g. JMS, SQS, AMQP) and event-driven architecture
- Knowledge of social network APIs and creating social network applications
- Good knowledge of design patterns/anti-patterns
- Experience working in an Agile/Scrum environment
In return, you’ll get
- A relaxed, supportive working atmosphere
- The ability to work with your choice of OS, IDE, and tools
- Regular knowledge sharing sessions with a wide range of talented engineers
- Career progression and mentoring
- A unique set of technical challenges to tackle
- The opportunity to expand and grow as an engineer