Senior Software Engineer - Java
FIVE PLUS YEARS OF PROFESSIONAL EXPERIENCE AS A SOFTWARE ENGINEER REQUIRED FOR THIS POSITION.
Here's a bit more about the Software Engineer position:
The Software Engineer is responsible for designing and analyzing applications, developing project plans, coding, testing and documenting all code utilizing Java and web-based programming tools. The Developer will also be responsible for maintaining and upgrading existing applications and will communicate with customers to understand their requirements and assist in the implementation of work requests.
Java: Candidate will be responsible for creating software that is both customer-facing and internal, primarily in the Java programming language. Candidate must demonstrate proficiency with common aspects of the Java language such as generics, collections, auto-boxing, as well as awareness of common software patterns.
Object-Oriented Design: The candidate must demonstrate a solid grasp of object-oriented design principles, such as polymorphism, encapsulation, the Liskov substitution principle, composition, and inheritance as they are expressed in the Java language.
Common Enterprise Software: We use several industry standard Java libraries, tools and frameworks that the ideal candidate will have experience with: Spring, Hibernate, jsp, Struts, Tomcat, Maven and Jetty.
Relational Database Systems: Interface with a relational database is done via both SQL and through the Hibernate object-relational mapper, but the latter is not a substitute for the former, so understanding of common SQL constructs including joins, sub-selects and grouping, preferably with experience in Oracle syntax and tools, is required. If you can expound on the merits or demerits of object-relational impedance mismatches bonus points will be awarded.
Web Services: Is a veteran of consuming remote web services via SOAP and REST clients.
- Design and analyze applications, develop project plans, code, test and document all code
- Maintain and upgrade existing applications
- Interface with customers to assist in implementation of work requests
- Assist support personnel in resolving moderately complex program problems
- 5+ years of current Java experience in Core Java/J2SE
- Experience with Spring MVC
- Strong RDBMS (database) skills (Postgresql/Oracle)
- Experience with Maven and Tomcat or JBoss
- Familiarity with source control concepts and tools such as GIT or SVN
- Good understanding of Object Oriented concepts, Patterns
- Ability to read and understand existing code
- BS in CS/ EE / Equivalent
- Experience with Linux is a plus
Technologies We Use:
- Spring Framework & web services
- SQL (Oracle)
- JSP and Jinja2-like templates
- REST and SOAP
Nextiva - Why Work With Us?
Fun, passionate, and driven, our team has revolutionized the cloud communications industry by delivering innovative products and Amazing Service. This culture of Amazing Service extends to how we treat both our customers and each other. We aim to create a space where we can have fun while crushing our goals.
We do amazing things to help over 100,000 businesses solve their toughest communications challenges, and were looking for like-minded people to join our team of nearly 500. Between free food, themed culture days, and team activities, each week is a new adventure. Come be a part of it!
2013-2016 GetVoip - Voted #1 Communications Provider
2014-2016 Voted a Top Company to Work for in Arizona
2011-2015 Phoenix Business Journal - Voted a "Best Place to Work"
2014-2015 Deloitte's Tech Fast 500 List - Fastest-growing tech company in Arizona, fastest-growing telecommunications company in the U.S
We offer our employees a casual and upbeat work environment along with an extensive benefits package that includes:
- 15 days of PTO and 7 paid holidays
- Full medical, dental, and vision coverage
- 401K program
- Company-paid life insurance
- Short and long term disability coverage
- Monthly team building events and activities
- Free Food - Catered lunches every Friday!
Back to top