Sr. Software Engineer - iTrade
Charlotte, NC 28201
About the Job
The Senior Software Engineer possesses a thorough knowledge of software, documentation, utilities and program scripts, and excellent written and verbal communication skills.
They demonstrate an advanced knowledge of application development lifecycles, technical reviews, software maintenance, configuration management, human factors/interface, and experience in software testing methodologies.
The Senior Software Engineer will provide work leadership by assigning work, resolving problems and managing small teams. This individual will interact with other project teams, product managers, and customers to coordinate project interdependencies.
Responsibilities:
- Responsible for designing, developing and modifying applications, developing system interfaces, and implementing software upgrades for Software as a Service product offerings
- Develop new functions and features across the full application stack including the data model layer, business layer, API layer and UI layer
- Enhance and resolve issues on existing applications. Partner with customer support to troubleshoot and resolve escalated production issues
- Refactoring code for performance and code maintainability
- Assist in the creation and execution of unit, integration and system tests
- Contribute to product and technical direction by brainstorming with Architects, Data Scientists, and Business and Product Managers
- Collaborate with product management, UX and QA teams
- Lead the design efforts for key areas of functionality
- Provide mentorship and help develop more junior engineers
- As a proponent of agile development methodologies, advocate for and help educate the team in the strong, ongoing adoption of Scrum and related practices
- Provide expertise in core data structures and algorithms and their practical implementation
- Recommend changes in development, maintenance, and system standards
- Engage in technical discussions; participate in technical designs and present technical ideas through white boarding
- Investigate and evaluate new technologies
Skills/Qualifications:
- Bachelor's degree in computer science, engineering, or a related field required. Masters degree preferred
- 5+ years of software development experience
- Excellent written and verbal communication and presentation skills
- Self-starter, strong analytical and problem-solving skills
- Excellent organizational/time-management and multitasking skills, and demonstrated ability to meet deadlines for multiple projects
- Ability to work across departmental boundaries to resolve issues
Technical Skills:
Required Skills:
- 5+ years of experience in Java software development and web based applications
- Proficiency with Agile or Continuous Integration methodologies
- Proficiency with SOAP (web services) and/or REST API usage
- Proficiency with relational databases including Oracle and MySQL
- Expert with Unit Test frameworks
- Expert with design pattern concepts and applications
Preferred Skills Knowledge with:
- Oracle certification as Java Developer, Java Platform or J2EE Developer is desirable
- Spring Framework and Spring Boot is desirable
- JavaScript based UI frameworks such as AngularJS, Angular2+, ReactJS
- Google Cloud or other cloud service
- Big Data / Hadoop and NoSQL databases is a big plus
- Cloud Native Technologies such as Docker containers and Kubernetes is a big plus
- Apache Kafka is a plus
- Native mobile development (Android, iOS)
Must have unrestricted ability to work in the United States.
Equal Opportunity Employer/Protected Veterans/Individuals with Disabilities
The contractor will not discharge or in any other manner discriminate against employees or applicants because they have inquired about, discussed, or disclosed their own pay or the pay of another employee or applicant. However, employees who have access to the compensation information of other employees or applicants as a part of their essential job functions cannot disclose the pay of other employees or applicants to individuals who do not otherwise have access to compensation information, unless the disclosure is (a) in response to a formal complaint or charge, (b) in furtherance of an investigation, proceeding, hearing, or action, including an investigation conducted by the employer, or (c) consistent with the contractor’s legal duty to furnish information. 41 CFR 60-1.35(c)
Engineering