Senior Software Engineer/ Back-End
з/п не указана
We are looking for a Senior Back-end Engineer with back-end web application and systems-level experience to join our team at ARCHITECH.
ARCHITECH is based in New York City, USA. We are a team of tech enthusiasts who constantly innovate, challenge each other to grow, that overall makes our company a great place to work. By joining us you can work with advanced and cutting edge technologies that define the future of IT industry.
As a product team, we believe in a collaborative working style with a bias towards rapid prototyping, experimentation and a strong curiosity for our customers and their needs.
Our team current focus is on building an automation system in logistics and transportation, an industry that undergoes major, self-disruptive changes.
An ideal candidate would be knowledgeable in Camunda BPM engine tool, agile software development, and software testing methodologies. You will collaborate with others to create a more focused and streamlined user experience for our customers to help them manage their orders faster and with less errors. You will proactively participate in every aspect of the software development lifecycle including design, implementation, test design, test implementation, optimization, and delivery utilizing the latest technologies.
If you are a professional who seeks self-dependence, is disciplined to work remotely and understands the importance of personal accountability, we would be glad to have you in our team.
- Build solutions using your strong background in distributed systems, and large scale database systems.
- Research, analyze, design, develop and test the solutions that are appropriate for the business and technology strategies.
- Participate in design discussions, code reviews and project related team meetings.
- Work with other engineers to develop innovative solutions that meet business needs with respect to functionality, performance, scalability, reliability, realistic implementation schedules and adherence to development principles and product goals.
- Develop technical & domain expertise and apply to solving product challenges.
Required Technical and Professional Expertise :
- 3+ years experience in software design and development, solid foundation in computer science with strong competencies in data structures, algorithms, and software design.
- Excelent knowledge in practicing OOAD, architectural and design patterns, open source platforms, frameworks, technologies and software engineering methodologies.
- Long time experience in Java 8/9
- Experience using an ORM (Hibernate 5)
- Experience with unit testing (PHPUnit, NoseTest, PyTest, JUnit/EasyMock)
- Experience in common build tools and version control systems (Gradle 4, Maven, Git/Gitlab).
- Experience using RabbitMQ or other AMQP message queues
Strong understanding of object oriented design principles and patterns
- At least five (5) years of experience in one or more of the following languages: PHP5+, Python, Java
- Expert skillset in Spring (Spring 5) technologies: Spring core, Spring data, Spring Boot, Spring cloud
- Solid database skills in a relational database (PostgresSQL, MySQL, etc)
- Familiar with automated DB schema migration and tools (Liquibase /Flyway / MS Dacpac / etc)
- Expertise with SDLC branching, SCM, and code deployment systems (e.g. git/gitflow, Jenkins, CircleCI, TravisCI, etc.)
- Understanding of Microservice architecture
Preferred Technical and Professional Expertise:
- Prior experience working with data science and machine learning
- Prior experience working with ZuuL API Gateway and Netflix/ribbon
- Prior experience working with Camunda BPM Workflow Engine
Preferred Personal Skills:
- Ability and desire to work remotely.
- Work independently with minimal direction.
- Excelent communication skills via written documents/emails and via Skype.
- Excelent attention to details.
- Flexibility in a changing environment, upholding the Agile philosophy, managing expediency vs accuracy.
- Strong organisational skills and a high degree of ownership for projects.
- Ability to adapt to changing business priorities and to thrive under pressure.
- Excelent decision-making, communication and collaboration skills.