Senior Software Engineer, Java Microservices, CloudBees CD (1201)
Desired Skills and Experience
3+ years of experience developing Java applications
Deep knowledge of Java Core / Java 8
Solid experience with Spring and Hibernate frameworks
Experience developing backend components, services or APIs in Java or a similar language.
Strong skills writing high-performance, multi-threaded, efficient and maintainable software code
Experience crafting and implementing highly scalable and performant microservices based applications.
Familiarity with HTTP, REST, HTML, JSON, and similar web-based development technologies, and with building complex multi-tier parallel distributed systems that communicate via them (such as the backend of complex websites)
Knowledge of SQL and experience working with online data stores (one of MySQL, PostgreSQL, Oracle, MS SQL Server)
Experience with building, maintaining and scaling large scale distributed systems.
You can identify trade-offs to various implementations and can make decisions about which solution would be best for a given situation.
Understanding of SaaS, PaaS, IaaS industry with hands-on experience with public cloud offerings (e.g., AWS, GCP, Azure).
Knowledge and experience of working with IOC container frameworks like Spring, Springboot and ORM technology such as Hibernate.
Bachelor’s or Master’s degree in computer science is highly preferred
Nice to haves
Experience using public (or private) cloud provider platforms like GCP, AWS or Azure, Kubernetes and Docker containers.
Knowledge of continuous integration/continuous delivery (CI/CD) is a plus.
Experience with analyzing thread safety and race conditions, parallelism, synchronization, and locking, including between threads, between machines in a cluster, and in the database, including optimistic and pessimistic locking.
SQL, object-relational mapping (e.g. using Hibernate), and basic DBA skills in Oracle and writing transactional code
Be part of a 2 week sprint executing on the backlog in lockstep with developers as part of an Agile team.
Work as an independent contributor collaborating with a team of developers and test engineers
Collaborate with product management, support and engineering teams in order to establish priorities
Mentoring & code reviewing for a remote team setting best practices and policies, writing specs, wiki pages, Knowledge Base articles and other internal documentation
Work closely with the Support team, and communicate with customer sysadmins, DBAs and developers for troubleshooting
Provide technology recommendations and strategy to support CloudBees product requirements
Collaborate with product management, support and engineering teams in order to establish priorities, understand requirements, formulate test plans and execute them accordingly.
Ability to work with customers directly on urgent issues
MODE OF APPLICATION
Click “APPLY FOR JOB” button above to apply for this job.
Every business is a software business, and is under pressure to innovate constantly. This increased velocity introduces new business risks. CloudBees (www.cloudbees.com) is building the world’s first end-to-end automated software delivery system, enabling companies to balance governance and developer freedom.