Onsite in Ann Arbor, MI days a week (Mon - Thurs)
The Software Engineer will perform complex software design tasks and technical analysis on the new generation, highly scalable and highly performant order management system, which drives a significant revenue for Client. Specifically, this role will act as a subject matter expert on the order management system server side modules. In addition, they will also provide mentorship for junior developers, liaise with developers from other teams and ensure development practices are in line with company best practices and policies.
Responsibilities :
- Performs product design & troubleshooting exercises of extremely high complexity which require extensive research and analysis.??
- Works closely with and supports developers from other teams that integrate with the ???
- Leads system design and specification development, program logic and flow-charting, testing, debugging, and documentation.?Will be responsible for making complex design choices to be used by the development teams.??
- Leads moderate to highly complex programming tasks, providing review of various development tasks and documentation. Provides analysis of problems and recommends solutions.
- A key contributor in client / technology interactions in the development of technology solutions
- Will interface with Enterprise Architecture & Infrastructure teams on strategic designs and initiatives.
- Leads the troubleshooting of complex problems in development and production environments, ensuring timely resolution of issues.
- Mentors more junior engineers / developers, serves as an SME on their system of expertise and directs the work and assigns development tasks of junior engineers / developers.
Required Skills :
Years of Java, JEE and web / internet based programming experience (both client and server side)Experience with OOA / OOD, distributed systems / software, real time processing, relational database systems, messaging systemsExperience with concurrency & multi-threadingExperience with scaling, Java Garbage Collection, and performance tuning preferredDeep understanding of data structures, algorithms and design patterns (GoF)Experience with agile, test-driven developmentExperience with Unix / LinuxExperience with build, deploy and test automation tools like Ant, Gradle, Maven, Jenkins, TeamCity, Junit, TestNG, JaCoCo or similar toolsDemonstrated experience working with core business logic within applicationsExperience in developing APIs and Frameworks?Excellent written and verbal communication skills????Preferred Skills
Experience with application development frameworks like Spring, Hibernate, JSF or similar frameworksExperience with compilers or DSLs preferredof Years Required :
Years of Core Java, and web / internet based programming experience (both client and server side)Required Education :
Bachelor's degree in Computer Science