Principal Software Engineer- JAVA
At AKQA we believe in the imaginative application of art and science to create beautiful ideas, products and services. With an entrepreneurial and collaborative approach, we design adaptive digital services and applications that capture the imagination, delivering impressive returns for our clients.
You will love working in a team of highly skilled people, all with strong opinions about various technologies, frameworks and approaches to delivery. You will be able to articulate your ideas to your colleagues effectively and will take on board the ideas of others. You will thrive when faced with new challenges and will constantly look to improve clients’ deliverables.
As a Senior Software Engineer you will build innovative web sites, content management systems and services using web and industry best practices. You will create robust solutions that are easy to deploy and a delight to operate. You will trail blaze new and innovative solutions using the latest server-side technologies.
- Strong foundation in OOAD concepts like Interfaces, Abstract Classes, Loose Coupling and High Cohesion
- Good knowledge of software engineering best practices like readability, immutability, commenting, exception handling and logging
- Proficiency in working with Java 8 and above and their latest APIs
- Proficiency in key Java packages and APIs like Collections, Generics, Threads, Lambda functions, streaming and concurrency, memory management and garbage collection.
- Understanding of web application concepts like HTTP(S) lifecycle, session, servlets, filters and design patterns for web development
- Experience in building Web Applications using a web development framework like Spring MVC / Boot, and knowledge of templating systems like JSP, Thymeleaf etc.
- Hands on working knowledge of GIT and Maven for code check-in, branching, code review and build processes
- Awareness about using a SQL or NoSQL database, the associated query language and use of ORMs
- Awareness of the importance and approach to writing unit test cases using tools like JUnit
- Develop user stories as per the provided business requirements, NFRs and technical design
- Implementing unit test cases using JUnit or similar framework
- Document the solution and guidelines for using the created technical components
- Continuously discover, evaluate and learn new technologies to stay at the forefront of technology innovation
- Work closely with other stakeholders in the team and clients to develop world class solutions
QUALIFICATIONS & CHARACTERISTICS
- 8+ years’ industry experience.
- Analytic and positive mindset with a personable and professional approach.
- Sharp attention to detail and a passion for new technology.
- Professional written and verbal communication.
AKQA is an Equal Opportunities Employer, we believe that diversity is vital to AKQA’s ability to provide our clients with the best recommendations and are committed to fostering a varied and inclusive work environment. Your race, colour, ancestry, religion, gender, gender identity, national origin, sexual orientation, age, marital status, disability or veteran status have no bearing on our hiring decisions. If you have a disability or special need that requires accommodation, please let us know.