Responsibilities
- Work with limited supervision and be able to handle concurrent tasking
- Maintain and expand existing systems
- Develop and integrate new product flows
- Adding new functionality to existing systems as well as new web services, micro services
- Refactoring Code into current technologies
- Providing feedback to the team on technology direction
- Participate in researching and resolving customer issues
Requirements
- B.S. in Computer Science or Related Field / OR A.S. in Computer Science or Related Field AND 2 Years Software Engineering Professional Experience / OR 4 Years Software Engineering Professional Experience / OR A.S. in Computer Science or Related Field AND 2 Years Software Engineering Professional Experience / OR 4 Years Software Engineering Professional Experience
- Java Programming with strong data structure, design and algorithm principles, including Object-oriented analysis and design (OOAD), Design Patterns, Architecture Patterns, Refactoring and best practices.
- Strong Spring Framework, Spring Boot experience
- Web applications/Web services/micro-services/API design and development
- Experience with various networking protocols (HTTP, TCP, UDP) and related domain specific languages (SOAP, XML, JSON)
- SQL Programming and a familiarity with one or more NoSQL databases
- Working knowledge with Linux tools and scripting languages
- Experience trouble shooting and debugging production environments
- Excellent written and verbal communication skills, ability to communicate effectively to both technical and nontechnical audiences
Nice to Have
- Languages: C++, C#, Python, PHP
- Concurrency/Multithreaded programming
- Java Performance Tuning
- Java Web Frameworks (e.g. Apache Struts 2)
- Java JPA/Hibernate/JDBC, JMS, JUnit
- Web Technologies: JavaScript, TypeScript, Angular, Node.js
- Web APIs/REST API: Facebook, YouTube, Twitch, PayPal
- Web, network, and Linux security: SSL, TLS, OAUTH, MFA, TFA, Central Authentication Service (CAS), OWASP Top Ten, etc.
- Cloud Technologies such as: AWS, Cloud Foundry, Kubernetes, Docker, Chef, Ansible, Kafka
- Continuous integration and continuous delivery CI/CD systems: Jenkins, GitLab, GitHub
- Investigating, designing, and delivering scalable systems with high concurrency and availability on the Linux platform
- Monitoring and alerting systems with trend analysis
- Various build systems and tools
- Apache Struts framework
- Apache Velocity templating
- Apache Tomcat application server
- Spring framework
- Netty framework & TCP
- Apache Camel library
- JMS, ActiveMQ
- Apereo CAS
- REST, SOAP & Protobuf
- Linux, CentOS
- JavaScript